Charles Hoskinson: Cardano – A Third Generation Smart Contract Blockchain - podcast episode cover

Charles Hoskinson: Cardano – A Third Generation Smart Contract Blockchain

May 08, 20181 hr 37 minEp. 234
--:--
--:--
Download Metacast podcast app
Listen to this episode in Metacast mobile app
Don't just listen to podcasts. Learn from them with transcripts, summaries, and chapters for every episode. Skim, search, and bookmark insights. Learn more

Episode description

We are joined by Charles Hoskinson, who played an early role in developing Ethereum and BitShares, and is currently the CEO of IOHK. IOHK is an engineering company that undertakes cryptocurrency research, contributes development efforts to the Ethereum Classic ecosystem, and is spearheading the release of Cardano – a third generation blockchain protocol. IOHK has made the news recently after the publication of fundamental research papers on the Proofs of Proof of Work and the Ouroboros PoS algorithm, and its recruitment of highly rated academics.

Topics covered in this episode:

  • IOHK’s role in the Ethereum Classic ecosystem, and how Ethereum Classic differs from Cardano
  • Cardano as a “”third generation blockchain”” and what this means
  • Governance system of Cardano and the challenges behind developing a decentralized governance system
  • Ouroboros PoS algorithm – why was it developed and what’s special about it
  • Ouroboros Genesis: how full nodes can be bootstrapped without requiring checkpoints
  • Cardano’s bet on K framework for smart contract execution

Episode links:

This episode is hosted by Meher Roy and Sunny Aggarwal. Show notes and listening options: epicenter.tv/234

Transcript

This episode of epicenter is brought to you by kenosis, an open platform for businesses to create their own prediction Market applications on top of the theorem Network. They recently launched unisex a challenge. Inviting developers to build apps on top of the closest platform to learn more. Go to epicenter, .t V / gnosis X. Hi, welcome to epicenter. The show is talks about the Project's startups and Technologies, driving the decentralization and blocks in

revolutions. My name is Maja toy, and today, we have a new show host joining epicenter. His name is sunny and he works with the cosmos project and we hope that he'll make a great show host. And you, and you like his questions, shun Sunny, welcome to the show and give us a brief intro about yourself. Hi everyone. Yeah, thank you for the introduction here. My name is sunny and I am currently a researcher working on the cosmos and tender in

projects. I first started like you know learning a lot about blockchain through the epicenter podcast, I was like my main go-to and some excited to be on it for the first time and starting off as a host instead of a guess which is kind of cool. So for this show, we have Charles hoskinson back on epicenter. You're going to focus our conversation on Cardinal, Charles, welcome back to the show.

It's a pleasure to be on guys. So we had you for the first time on in episode 1, 44. This was right a few weeks after the Dow hack happen and aetherium spirit into helium classic and and, and cerium. And give us an idea how it's been since then. What's what's been going on in your life? Well, you know, I still like long walks on the beach and, you know, things like that but no, but levity aside day it's been pretty crazy, you know. I which case grown from a few dozen people to about 130

people, we operate 10 countries. Now we work on a lot of projects, we work on Zen cash. We work on a theorem classic and the one we're increasingly becoming known for is cardano. So the cardano project is, is like a leviathan. It's got dozens of researchers and engineers and we're doing a little bit of everything. Suppose, I should give you guys since my first time I was on here was with the theorem

classic a brief update there. When I came on epicenter, we were just kind of talking hypotheticals like ìoh K wants to build a wallet and I which K is going to hire some developers and you know we're gonna go do some cool stuff. Well we did that. We actually hired seven full-time, Scala developers and what we were able to do with those developers is build a full scholar client so it's about

twelve thousand lines of code. So, full node In fact, not only we released it, we're actually on the next version 1.1, which has some performance improvements and Bug fixes and things like that. It's gone through a full security audit from cadell ski security. And at the moment, I think it's the most concise and the only functional etherium client implemented, whether it be e TC or ethereum. So that teams really had a heck of a lot of fun. We learned a huge amount in the

process of building a client. And now we've kind of gotten to the point where we have to make a decision. Either kind of retire the client or to scale up the team and start making some substantive changes to the etherium classic

ecosystem. So there's kind of a loose governance structure that's been forming that Barry Silver brought together with a bit of funding and we'll have some discussions there and if we can get funding will scale up mantis and take it to the next level if not we'll continue maintaining and leaving a few developers on it as an alternative that people

can download. But mission accomplished, we said we were going to hire some people we Said we were going to build a node we went and did that and it took it took a whole year and it was a huge learning experience for us, that's really awesome. Yeah I mean I've actually used the Mantis client before and it's a pretty good user

experience honestly. So what do you guys think is like you know before we drop more into cardano like what do you think is you guys are still relatively focus on a theorem classic as well. How do you see the relationship between cardano and etherium classic looking like going forward? I know that you guys are building did etherium classic support into the Daedalus wallet, right? Right, right. Well, Daedalus. Is eventually going to be a

platform. So the goal is to Daedalus is to start looking a lot like Android and that you have one, click install and developers are able to kind of package and bundle their own daps or their own wallets, and there's an obvious way of doing that and it's a really difficult to build an architecture this way, that's secure and, you know, user-friendly and developer friendly and so forth.

So there's a lot of discussions there but yeah, Daedalus does support mantis as it. Does cardano as well. So what's the relationship between the two projects? We kind of view them? As is different styles of cryptocurrencies, etherium classic because of the economics, the culture and the ecosystem looks a lot like a better Bitcoin. It's basically it's got Supply mechanics like Bitcoin. It's got proof of work. It's going to stay on proof-of-work forever.

So if you your cut from that cloth and you like that Klaus, it's like a better type of commodity and it's still a simple aspects, like, you know, silver does more than gold, you know. Are both Commodities. And you know, people look at them along those lines, whereas cardano's like the whole banana. It's got a governance system, it's got It's a p.o. that POS versus proof of work, it's going to have multi-party computation. It's got you know side chains

built-in. It's going to have lots of computing Stacks. So really what cardano's about is doing more than just being a store value that has some utility attached to it. It's about saying, let's say, I go to Ethiopia and I want to rip out the entire Financial stack of the country and replace it with a So currency framework. What would that look like? So it requires you to answer a lot of questions. Like, what's the relationship between permission Ledger's and permissionless, Ledger's?

How do you actually have voting built in so you can make changes to it. You're not necessarily going to be immutable and every single case, you're not necessarily going to be private in every single case, in these types of things. And there's some sort of system to reconcile of that. So it's a much broader scope and therefore requires a kind of different technology in a

different philosophy. So we believe in both and we maintain both in Our portfolio and, you know, for the foreseeable future will continue to support these projects especially cardano for being paid to that one. We just to point out, I spent over a million dollars on E TC. I haven't been paid anything yet. So it'll principles principles are getting pretty expensive. Yeah, yeah. So I mean, you know, last time you guys were on the podcast you mentioned that one of the things

you liked about I ohk. Was that you guys were able to focus on very like general research rather than having to focus on a specific. Perfect project. And you know now it seems that you know you are working on other projects as well but there is r.l. generally a large focus on cardano and so what were the what kind of decisions LED you to make that change? And like, how do you think that's going to affect the future of I ohk and stuff?

So what happens is that you kind of have cryptocurrencies come in and stages, or Generations, or phases, whatever you want to call them. And every time they calm, they tend to introduce a collection of new Concepts. So you know, Bitcoin came in really Bitcoin wasn't trying to actually be money or a payment system. It was something much more simple. It was a collective delusion problem.

So basically the goal was to convince people that these magic internet tokens somehow back by math or actually worth real money. And we Can buy and sell and trade them right. So so basically, it took a few years for that to set in and really the Turning Point year was 2013 and at that point like Bitcoin was here to stay people said okay this is not going to go away. This is a real thing but then immediately people said we'll

hang on a second here. This is just a push payment system that's really slow and really expensive and not very user-friendly. I want to do a lot more with it. Can I do a lot more and then we had this Grand conversation about how do we augment it? So like we saw things like that. Coins and master coin. We saw all coins like NXT for example, and they all brought a lot of innovation, but at the end of the day, we need to programmability.

We needed is like when Java can JavaScript came to the web browser. So you know if italic and I and others we created a theorem and the goal of etherium was to say OK give control over these sub protocols that run on a blockchain to the developer and give them an easy way of doing that. And that's another proof of concept and so a lot of people thought we were crazy and in fact a lot of people still think the theorem is crazy. That's fair although a lot of People still think that Bitcoin

is crazy. So, you know, that's fair to and so basically theorem comes out as the next big generation and they kind of introduced the notion of smart contract, you know this notion of more complex computation in the transaction and then all these emergent structures that you can kind of build from it. Alright. So now that Generations done it set people seem to agree.

It's a good idea. There's a lot of competitors like Neo and he owes and others that are coming out or are already are out in Market and we're now entering a third Generation where we say, okay the delusions good we like that computation is probably a pretty good idea but how do we do these things at a scale of millions of users to billions of users? If they're actually going to be useful for people s there's probably going to be hundreds to thousands of cryptocurrencies

long-term. I don't think we're going to see the great Cambrian Extinction. You know we're you know, we lose all these cryptocurrencies. They're still going to be a lot around because you know everything humans.

Do we do a lot of. We have lots of languages, we have lots of cultures, we have lots of governments and And we have lots of religions is really hard for human beings to agree or consolidate on anything and so it's something as controversial as money or your financial life is probably not going to consolidate it run just one universal standard.

So as a consequence you know you need interoperability you need ability to actually move value in data and preserve certain things like security and privacy as you Traverse the internet of value and you could between all these things. So there's a scalability component, there's interoperability component and it's things like a theorem classic or Bitcoin. A shiv really brought to the Forefront. There's a governance can problem as well. Where are you?

As we move Beyond just a couple of nerds who like meet up and, you know, they enjoy talking to each other over slack to an actual system, which has millions to billions of users and has control over your financial life and all the facets of that maybe including your identity and your property, you need some form of a democratic process to make decisions of where the system is going to go and how do you pay for things? And so Fourth.

Now whether that's meta to the system, meaning that there's some sort of meta consensus or it's embedded within an existing government or it's built on blockchain, there's a lot of debates about that and so you see projects for example like Dash and tasos or cardano, we view that on blockchain governance for at least some things is probably a good idea.

Other projects like Bitcoin for example a lot of people have been arguing to keep that off chain and you know have some sort of you know open source consensus material rise around and I think vitalik is also been a bit skeptical of Munching governance as well. So these are kind of the three design criteria that we've, you are required for the next generation of cryptocurrency. Keep what we know and love. So keep the collective delusion. Keep it weird.

Keep the keep the computation, that's pretty cool. But then also go ahead and move into a domain where you get faster. As you get more users, you can talk to all the different cryptocurrencies and you have some way of sorting out who pays and who decides. So that was really the, the 2015 idea for the cardano, In a nutshell, these were the the kind of business requirements that super high level, then what had to be decided is well, how

the hell do we do that? So, we spent the first two years kind of thinking really carefully about a lot of deep Tech. We started a really deep research agenda and we started tons of different threats threats. Like better consensus algorithms threads on consent, on voting threads on things like, you know, better crypto Primitives like making us resistance of quantum computers, you know threads? Things like side chains and so forth. And what we've been doing is gradually.

Now closing out those threads turning them to actual peer-reviewed white papers, and then converting those into specifications and then gradually implementing those and putting them into a production system. So the first version of that system came out in September of 2017, kind of runs like Ripple, it's a walk delegation version of Ouroboros, it's a lot simpler than the papers we've recently

published. And over time we're just going to more and more decentralized system and that eventually add-on components like are so I In components, that we can link our smart contract layer and so forth. And that will be coming in the next few months to years, depending on the features. So that's good. High-level summary of I think what we're doing. I see so to like break that apart. So like yeah it's a lot right? Yeah, yeah.

So like, you know you guys had a lot of ideas on like what like needs to be done to make a third-generation blockchain and then use now cardano is basically the amalgamation of like okay let's take all of these ideas and like make a prototype. Show that like these things actually mesh together and work together and we can make a production system using these so temporary. It's important to point out that there are other projects are

chasing this. But usually what they do is they chase a particular Dimension like EOS and Iota. For example, really chasing the scalability side. They say oh we can do lots of TPS and then interoperability you have projects like a Theon and ripple for example with inter Ledger and they're really trying to talk about that internet of value and then in terms of governance you see

projects like Dash and pesos. So I think there's Is consensus in the space that at least one or more of these dimensions are really important. I think we're the only one that tends to view them so interconnected that you kind of have to do all three at the same time, right? So scalability, governance and interoperability those seem to be like the three key things. So I guess maybe we should like dive into some of them. Let's start with governance,

right? Can you give us a bit of a short summary about your governance mechanism for cardano? Yeah, so that's still under design it. So we have a team led by a professor in Diversity named ping Chang and we've done a few videos there on our YouTube page but basically the idea is that you have to combat a couple of demons at the same time. So one thing that you have to combat is the who gets to decide demon and that's a really

difficult question. So you know we tend to be beings of desired fairness so we tend to be egalitarian and say all well everybody ought to be equal and so forth. But the reality is people aren't in terms of skills, time expertise, these types of things. So it's really Difficult to build a voting system because you can either overview and then you end up having mop roll.

So you get very poor decisions that are made or you can end up creating a very Ivory Tower pristine group, of voting people who end up making your betters or making decisions on your behalf. And that's, that's quite bad too. So you have to kind of find a sweet spot and this is, you know, not a new problem. It's something that political theorists have been talking about for hundreds of years and they've come up with numerous

different voting systems. You know, everything from what are called, linear preference, ordering systems were For any decision. You don't pick one, you pick a collection and you rank them. So conjure say and board are examples of that to things like liquid democracy and liquid feedback. So we said, you know, liquid democracy, seems really cool. So this kind of delegating your vo. So you know, you say all right well let's talk about two events, the to elucidate the

example. So everybody in the beginning its let's say the same flow and in the votes are situational so you know, Bob has, you know, is proposing a nuclear. Our plan design and you're allowed to vote on it, for whatever reason why most people aren't nuclear Engineers. So they're probably not going to have a very informed opinion that they're going to talk more about the bike shed in front of the nuclear plant in the actual design of the nuclear plant.

So what if you could delegate your vote to Bill, who's your neighbor who happens to be an engineer, you respect a lot and done this for 25 years gray. But then let's say there's another vote and that votes on, I don't know, you know, your roof, you know, or zoning laws or something like that and getting your a big debate with Bill and your you don't want to

give me your phone. So in ordinary, representative democracy, what you tend to do is just give one third party like a congressman or a senator power for a period of time and then they go and decide on your behalf for better for worse and a delegate of democracy system you can delegate real time. So you can say, okay, for this particular photo, give it to bill. For this particular vote, I gave it to Bob and so forth and there's a lot of theory behind

why that would make more sense. Just as an example, if you had a delegated voting class in the u.s. election, If for the presidency, then you know, Donald Trump would have a really, really hard time getting elected. Why? Because most people would delegate their votes to local leaders in their communities. And so Trump is not talking to the general American public anymore. He's actually talking to a voting class. That's been specially selected

to analyze him. So when he says we're going to make America great, you'll say, well what exactly are you going to do? And he has to go into policy, specifics. And he can't do that, right? Get, he's built his whole campaign on low information. So, you know, there's A lot of people seem to feel that liquid feedback. Look, democracy is a good idea. So we said, okay, let's try that. So, we're going to push a paper out for CCS come around.

May we were hoping to get it out in February, but the universe will composability stuff. Took a little longer to get done but it has some details on exactly how we think that would work and involves a lot of complex math. But if you're curious of how it basically works, we did a video, it's about 45 minutes long and it goes into kind of details of how the crypto works and how we view the system. And so, Fourth but that's one demon.

The who gets to decide demon and you make voting proportional to your stake in the system. That's that's the obvious starting point but you can change that metric or re-weighted based on other facts and circumstances. The second demon is the demon of rational ignorance and this is the harder of the two to solve. So what is rational, ignorance will rational, ignorance is basically where the value you get from, knowing something is less than the time.

It takes to know that thing. So for example, let's talk about health care. R. The American Healthcare System is horrendously complicated. It would take you literally years to decades to understand all the facets and ins outs of it. So, if somebody comes to you and says, hey Sally on what you make a decision on whether you know, universal healthcare is a good idea or Obamacare is a good idea or something like that.

The only way you can actually really have an informed decision is to invest those years of effort. And what is the output of it? Your vote counts. Exactly. The same as my vote, and you exactly the same as the crazy hobos vote in the streets. San Francisco. So, then you get a little disenfranchised. You say, hang on a second here. I got exactly the same payoff for putting a lot more work. So what's the rational Behavior to not?

Stay informed. That's why we tend to focus on Wedge issues and elections because they're very easy to have an opinion on an urn understand. But in general, they aren't they, you know, they aren't very substantive, you know, like the things that really have a big impact over your life or things like foreign policy and Health Care policy and retirement policy and so forth. Not gay rights or abortion rights.

These are issues that affect small minorities but those issues are much easier to understand than you know, the complex intricacies of the Syrian Conflict, for example. So most voters tend to stay ignorant. Yeah. What is this relevant to the cryptocurrency? Space will just look at basic debate. We've been having like the block size or the difference between proof of work or proof of steak. Or should we bail something out, or not? These are very complicated issues, and they have many

different dimensions to them. They take a huge amount of time to become informed about Most people just either vote with their wallet, meaning, whatever they think, is going to give them the most money, or they just vote along Cults of Personality where they just say, well, what did vitalik think or Charleston incurred, an think, or something like that, or a dries thing, and they just kind of go along that particular

line. So the problem of rational ignorance has a heck of a lot harder to solve than the who gets to decide problem and there's been some ideas like maybe you incentivize people to be a voting class like Dash has masternodes for example or you know maybe you can create some sort of Bounty system or something.

So we don't have quite a solution yet for that side of it and we don't really need a solution at the moment because the voting parts of cardano won't be out until probably 2019. It's one of the last components were going to pull into the system as we could you know turn things on but we will you know touch that topic and the Mets paper that's being released and then we're going to try to experiment with some things. The other thing is that we're

not in this game alone. Everybody who runs a cryptocurrency kind of has to deal with this in some capacity. So what I'd love to do is start a dialogue with a lot of other project leaders and try to create some you know Common Notions or at least some Universal standards that we can follow about these things. But those are the two demons. We're I'd say we're in the research Spectrum. We're at Ouroboros or consensus. Algorithm is very Advanced, it's near done. Whereas, the Voting is, you

know, in the early phases. I'd say, you know, 20 30 % along that research Spectrum. So we're not we're not really too far along, but there are some videos we have look Liquid democracy? Look. Good feedback in Google, rational ignorance. And it'll give you a really good sense of what are some of the

challenges. Another thing is, there's actually a course on Coursera. If you're really interested in democracy, I think it's from University of Michigan and it's securing digital democracy, or something like that. And then there's another class on voting theory that they occasionally run and these are really good classes and they kind of give you a high level view of, you know, how these things work. And also some of the things to

think about that. You probably have never thought about before, and it's a really fascinating. Topic. Like in the governance, aspect you. You talk about like these two issues. One is the issue of rational ignorance, which is, how do you incentivize the voters to actually invest the effort to vote? Well, and the second is the issue of deciding who gets to vote right. Now, many people would say that

it with proof of stake. There's a third, very fundamental problem of, of governance and voting and that problem is somehow that Like in a traditional proof of stake system, you you need to stake your coins and then participate in consensus and then you'll make more coins, right? So in the early days of cryptocurrency, people used to worry about the rich, get richer problem right now.

Now, but when we start to have governess decisions about the system, and the voters are these takers The rich get richer problem gets magnified. What I mean to say is let's say like the inflation rate in card. I know is I don't know 2% If I'm really rich, I family ate a rich.

I want the inflation rate to be much higher because like, I will stake, my Ada, I will run the validators, take my Ada, and I want the inflation rate to be high, so I'll get more Ada and I'll, you know, consolidate my position of having a lot of ADA. Whereas somebody that has very little Ada, might not run a validate themselves and slowly they will get diluted out now.

The decision of what should be the inflation rate in a system is dependent on governance and then governance in governance. If I have a lot of ADA, I have a lot of voting power. So don't you see this? As a problem that when, when you have, the people that have steak vote on governance decisions, you might somehow magnify the rich get richer problem. Yeah. So seems like a prom on the surface but actually if you if you break into the analysis,

it's a bit more complicated. So first off the, this rich, people are going to vote on, whatever they feel is going to produce value for them. And the reality is, he's short term value, is not as much as you'd think what they look more long-term, why? Because these markets are traditionally thin. So even if you could do something to temporarily increase the price 10 or 20 percent at a long-term deficit, if you hold 10 or 15% of the supply, you can never divest that amount.

And if you do long-term damage to the See you're actually costing yourself money. You'll make a little money in the short term but you hurt yourself on the back end so the decision making the rational decision-making analysis of, what I do, if I'm a custodian of the system and I hold a lot of it is a bit muddled and it's not just what will maximize my utility day, two or day three, but maybe a longer term view.

S, let's say you have problems like a 51% attack through your plutocracy, you can always fire your stakeholders. By a fork. And that's something you can't do with a, with a proof of work system. See this is endogenous consensus versus exact doggedness, exogenously consensus. So external versus internal.

So when your security comes from an external provider, they own all the hardware and if you fire them by changing the proof-of-work algorithm, you have to kind of rebuild your entire security base from the ground up. But let's say Bob and a proof of stake system has 51 percent of the steak, the 49 percent minority which would say is much more diverse and they're actually doing everything and Bob just happens to have a pile of coins and he does nothing but

he's a malicious. You can just Fork the currency, create cardano to, and remove Bob, completely from the set. Now, what have you done? You've removed the malicious actor. The remaining people are honest and you actually have a, much more secure system now, and, you know, your, you haven't lost any security, you actually gain security from that event, whereas, you can never do that type of a thing with proof of work.

Now, getting onto the, the voting set of things, you know, the Obvious to do voting for changing system-level parameters like inflation or something like that would be proportional to your stake in the system and that's fine to do. But you can create other parameters in the system. For example you could create the notion of a good citizen in the system, like a reputation system. Like I've relayed lots of data or when your systems become more complicated than just consensus as a service.

When you could have other things like trusted data, feeds or multi-party computation providers, or these types of things. Then in those particular cases, you could and get points and those could then biased your voting power. So it could end up that the person who has the most steak doesn't necessarily be the most powerful person system rather. It's the most useful person in the system, but that's complicated metric to construct.

So we have to do is start somewhere in the most obvious places to start where the people have the greatest Financial incentive to participate in the system for the long-term growth and well-being of the system. There's another thing I like to point out is called the lump fallacy. Is it something comes up in economics where people tend to believe that. All the wealth ever created is already been created, and it's just about proportions and how much did Bob get versus Bill get?

And it's a big misconception. You'll see it a lot in a specially liberal politics, where people say, well, look how much money these billionaires are getting, you know, proportionate to the rest of the people. And oh God, these evil people. The rich aren't paying their fair share. Wealth is created. Wealth is created through actions. Wealth is created through productivity.

So when you are participating in consensus it's not a rich gets richer thing, you're performing a service for the network and the network is paying you to perform that service and this is complicated stuff, it's not just the state. Eventually it could be a decentralized file system, it could be computation as a service which is effect effectively. What ethereum is it can be

relaying huge sums of data. Like if EOS does live up to its claims of performance, it could end up moving GB every second of data, okay? So you're being To provide these Services, which is producing wealth, its producing value for everybody and therefore, corns of being minted to pay you.

The last point is that the same hundred people who control the wealth are going to be the same hundred people year, two and year, three people sell tokens, you know, if people just held onto their Bitcoins forever, then the original miners would have had, you know, much much more. But the reality is people run businesses. They tend to sell things. So you're going to see a lot of rotation of value. Why? Because there's tons of volatility Leti.

You know so if your coin goes up a 5x or 10x you don't say boy I should hold on to this because I can get you know Perpetual 2% return you say. I don't think this 5x or 10x is sustainable. I'm going to go liquidate 30 or 40 or 50 percent of my Holdings and lock in my 5x or 10x. I'm so lucky. What does it mean? You've just Diversified Holdings.

So, in all things, whether it's a start-up or or any cryptocurrency, what we've seen is a gradual deconsolidation of Holdings, Bill Gates, for example, with About 64 percent of the company. When he started it he only has 5%. Now, he could have held onto that chair. You could have never done looted himself or dilute himself as small as possible and kept going long, Microsoft, but he realized that diversification matters and that's generally what's probably going to happen with most people

who are involved. Cryptocurrencies, is that, as volatility goes up and down, they liquidate. And then you see a gradual deconsolidation, which is much greater than the particular inflation rate. But, you know, these are different things, you know, with proof of work. Youyou kind of Kick the Can down the road and you hide inconvenient truths. It's inconvenient to the Bitcoin space that 10 people, 10 pools control, more than 51% of the hash power.

And I don't know these pools. I can't be these pools. They saw. What anybody can buy a miter. Yeah, but if its patented and it has a very bespoke supply chain and people are using subsidized power, that's not a fair game. I remember I bought a butterfly Labs minor. I got it a year and a half after I put the pre Order n and they were testing them testing them, they were mining with my minor for until it was no longer profitable and they shipped it

to me that's not a fair game. It's a rigged game. So you know what we do is we say all well, you know, there's this implicit notion of control and it's very butterflies and rainbows and people like it. But then instead what you've done is given it to some silent, small group and was proof of steak, you have to explicitly, have this conversation of who should be in control, how many people, why should they be in control? What are their Elves. How do we ameliorate certain things?

So, if the rich are malicious, you have the nuclear option of forking them out. If you have other options of introducing metrics to dilute their power like a proof of usefulness, for example, and then you have social metrics that can be applied as well and if their malicious the price will go down as well. So generally the best outcome is to just have them behave following the protocol as it's as it's written and I think that's a much better way of

going about things? Because it's out in the open. It's Blissett you're going to not get it right the first time around but you can fine. Tune the system. There's going to be a lot of opinions on how things ought to be done, whether it be a delegated proof of steak or a bonded, proof of steak, or a proof of stake system.

And it's very darwinian in a certain respect rather than just pretending like there's this God mode that's somewhere off in the rainbow and they're always going to act honestly and behaved properly and don't worry about it, they'll just be there for you and they become actually barriers to change as we've seen with the Bitcoin Network. So that's my big rant.

This episode of epicenter is brought to you by gnosis gnosis is an open platform for businesses to create their own prediction markets on the theory Network. Prediction markets are powerful tools for aggregating information about the expected outcome of future events. So this can be used for things like information-gathering incentivizing, behaviors, making governance decisions or even

creating Insurance products. So, in order to turn kenosis into the most powerful forecasting tool in the world, they recently launched gnosis X, it's a challenge that It's developers to build applications on top of the platform. And the best applications per category will be rewarded up to one hundred thousand dollars in gno tokens.

So throughout the year, kenosis will announce different categories for the challenge and the current challenge has categories for science, Nardi token, diligence and blockchain project. Integration analysis also provides the SDK, which allows you to easily, get started with everything you need to get coding. And they also provide dedicated support channels throughout the challenge for teams and solar Builder. Hours are up for the challenge, get started now to learn more,

and to sign up, go to epicenter .t V, / kenosis X. We like to thank gnosis for their support of epicenter. So, one of the things that you mentioned, that was actually very interesting is, like, the idea of if the, this is one of my biggest benefits of proof of stake over work with work as well. Is that when people do something malicious, we can just easily hard Fork them out. Right? And my here's question is about what happens if they try to abuse the governance system?

One thing that I've actually watched the Whiteboard video. By the way, I love your guys's whiteboard. Videos are awesome, which one with Ben Chang the one with. Yes, the one on the governance and stuff.

And so one of the things that you guys that he mentioned was that you use the ideas that the Voting is going to be in like zero knowledge and and so this actually is an interesting question because we've actually had this discussion at Cosmos as well is should voting be pivot or transparent and like we're actually going down the route of like. So what do you think is the effect of having private voting, where you actually lose that transparency and potentially

that accountability? So let's say there's a boat and a lot of people decide to, like, increase a bunch of money for themselves, not in some, you know, convoluted way, not talking with that clear. But you know, how do we make sure that we figure out who vote? Who was the one who voted that? So we can hold them accountable. Maybe not either through like Protocol by hard for. Can we at least socially accountable?

Okay, that's a great question. So first, it's important understand that there's a spectrum of voting. So you start with things like SRO style, things like membership-based, self-regulatory, organizations and those are very fluid and things can change in a single meeting. Then you have like

municipalities, right? And these are like your local mayor and your County Council and you can go and complain to the County Council. They take a vote, maybe they meet every two weeks or three weeks and they can change things fairly quickly. Then you have your status Please and those move at their own pace but they're still somewhat of a democratically accessible to people. Then you actually have your federal government side of things and that's much more bureaucratic.

It's much more difficult to get things done and then you have even further the Constitution where you say, okay, from a, to change the Constitution, it's only been done in America about two dozen times and over our entire 200-year history. So, that's a real challenging thing to change. So we have to do is say certain parameters in my system live in different spots, so Things like user experience taste texture, feel, you know, nice to have features, like HD wallets those

types of things. Probably live towards the Estero style side, so they don't even necessarily require a vote. That's just you. The developer making decisions of what's best for your users and there's some ambiguity in and wiggle room in the protocol to allow you to have that kind of flexibility other things. Like, for example, monetary policy or how you achieve consensus or the voting system mechanics themselves, those are much more towards the Constitution. Inside.

Okay, so that requires a lot more consent that a lot more time. It's a it's a lot more drawn out process than it would to be able to change something like that. So you have to find that entire Spectrum. So that's the first step. Second step is shoot. You have a blind vallot, which is anonymous voting, or should you have transparent voting? Now I've seen arguments on both sides. For example, Switzerland, they

have a can tunnel system. So there are true Confederacy and some of the Canton still do public votes. So you can actually go Out. And, you know, it there's a voting day and people shout out their vote and they go into groups. There's also other public voting systems like America, we have caucuses, for example, and a lot of these caucuses, you go into groups and who supports Ron Paul and who supports Romney who supports McCain and so forth.

And we all had to deal with that for those who are in dull those elections and you get various degrees of you know outcomes the problem with a transparent system when you're talking about money is that what say there's a delegation in one particular delegate ends up getting a A lot of influence, let's say Andreas you know, if for Bitcoin or something like that and there's a voting system and everybody likes Andreas. So he ends up getting like 30% of all the votes.

Well, if that's publicly known what you've basically done, is painted a big red Target on his back. So now he's got to look over his shoulder and say like, oh shit, you know, I gotta worry about my security like what if somebody kidnaps his girlfriend or his kids or whatever, if he has

children, I don't know. But, you know, they they try to cover tack or some and They know, yes, thirty percent so they can use the wrench or use some in a blackmail, or something like that, and so, he'll go and vote. But he's no longer voting with his own, free will or conscience. He's voting being coerced.

Whereas, if you have a private ballot, the advantage there is that you can never be able to conduct that attack because it's difficult to know, depending on how Anonymous you are, who these people tend to be, except for, you know, you personally making that decision of to whom to delegate to.

So, and I average, you eliminate a vector of attack for your Item. Now, if you are clever about how you sort out, system-level parameters on that Spectrum from this or all the way to the Constitution level set up, you still gain the benefit of not changing things quickly. That ought not to be changed weekly.

Like the inflation example that was brought up earlier, that's a constitutional level change, and if that's going to happen, that's something that probably require multiple votes over a long Arc of time. And there's a lot of mitigations, a lot of opportunity for debate and discussion, and if it does get committed, it's something that commit gets committed, the months to Years, time frame. For example, with the theorem classic, we kind of did this.

We had to make a decision about monetary policy, and we also had to make a decision about the difficulty. Bob this process took a year and a half to go through from start to finish and these things are just now being locked in. So you know, system level changes whether you have an on blockchain or off blockchain governance mechanism. They ought to take a heck of a lot of time and be a very open

process with lots of debates. And what ends up happening is the better arguments tend to float to the top over time and it changes public. Yin and the probability of a vote maliciously succeeding all those rounds ends up failing and you know, there's a lot of ideas on, you know, the best way of doing this, the venetians had a voting system where they kind of randomly sorted people and had multiple rounds and the ideas. You'd never know which person the bribe and so forth.

So it's a really amazing how much ingenuities come through. But at the end of the day, it's also an empirical thing where you have Theory and you think, you know what's going to happen and you think, you know, who's going to be rational and how they're going to be rational. But you just have to launch it and you actually have to see how it works in practice and where

it's gone wrong and so forth. There's also a participatory problem where these systems assume a rational majority and these systems assume reasonable participation and the reality is that most democratic processes tend to fall apart when participation Falls below a certain threshold. That's why things like delegation are so powerful because you probably can't get everybody to participate, but it's a lot easier to get people. At least delegate their vote to

somebody. You know, the American election going back to that. If you look at like two thousand verses 2004 versus 2008, versus 2012 2016 and you chart, the total amount of people who were eligible to vote versus the percentage of who actually voted. It's declining a cycle by cycle by cycle, but if people had a delegate of ability, the, the conjecture would be that you would see a relatively high level of participation there, because the people who are going to vote, are going to vote

anyway. But then that Delta between the people eligible, not most of them would still probably delegate to community leaders or people that they know and trust. And you'd get a much richer conversation, probably out of that that process, but that's a conjecture. And the only way to verify the conjecture is empirically. So you have to run a system and take a look at participation and

quality participation. So we do have some data, we study the dash Treasury System. We took a look at the master node counts and which ballots were being proposed and we wrote a big paper on its if you die which case Search and look at our library, you can see the dash treasury report, we wrote and there was some good, some bad and some ugly there in that

we discovered them. There was very little funding diversity from when we studied that, meaning that the same groups of people tended to be the ones submitting the ballots and getting the ballots. Now that can either be because the ecosystem is still very young and there's a Founder Effect where people tend to true true trust the internal group of people to get it done. And it hasn't Diversified yet or it could Be an endemic failure of the of the voting system

itself. And really the only way to, you know, understand that is to kind of look at it month by month and see if you're getting a trend of increasing diversity or it staying relatively stagnant. If is staying stagnant, is probably a structural problem with the system. So we'll link to the dash governance system analysis in the in the show notes so our listeners can can follow up on it. So Charles yeah.

It it does seem like card. I know you have done a lot of research on on governance and we look forward to what you end up implementing their understand correctly. That governance is slated for 2007 time in 2019, not 2018. Yeah, the big focus of 2018 is smart contracts and decentralization. Yeah, that you kind of have to do things in order. 2017 was, let's get a product and Market. Yay, it's really hard to get scientist to do that.

So, you know, how long is a piece of string, so we got Byron out in 2017 and 2018 is moved to specification driven development, fully decentralized system, and then turn on gogin, which is our smart contract system, and get all that rolling out. And that's a huge coordination problem. Then 2019 is about performance and governance and so basically, take the system start charting the system and then turn on the government's.

Has gradually. There's also a user education component to it. So you need if you're gonna have an effective governance system to have leaders materialize, so you need meetup groups to form. You need people to understand the philosophy of the system and why we're building it. You people understand the underlying technology and develop an intelligent opinion or otherwise we'll end up happening. Is you'll have a beautiful voting system but nobody actually ends up using it.

What they do is just say what a Charles say, or what a Dunkin say or what it, aggelos saying. So I'll just vote for that. So you need about Here are two of Community Management and growth and development, to create diversity, and what you have diversity. Then you actually get a pretty vibrant ecosystem. So, it would be counterproductive in my view to have a voting system at the moment. It would, it would be just a

voting system in name only. So 2019 is what we feel and then if you know there's any delays 2020 is when we do that we have an additional year specifically for that. Okay. So right now is it going to stay say that like the focus is on unlike Oof of steak and having a system in which different stakeholders actually, validate the blockchain. Yeah, and proof of stick is such a heart problem, you know, we got a cosmos guy here, so your

keenly aware of it as well. And you know, the problem with proof of stake is that you're trying to take something that ordinarily takes enormous amounts of money and energy and resources, and coordination, and reduce it down to something that doesn't require all that your sense of sizing it, but that you want to get all the benefits. So it's like, saying, I want to eat the cake but I don't want to get fat. You know, that's that's a basically, what proof of stake

is saying. So the first thing we had to First and is, what are we even trying to accomplish? And that's the first question that was asked. So what is security? What is a ledger? What is a blockchain? You know, this a basic question and surprisingly that question wasn't answered until we wrote a paper record gkl 15 where we Define a basically, what a ledger is and we created some security properties for it.

Then we had to create a Baseline and say well does proof-of-work provide that and the answer is yes, proof of work provides a secure Ledger as defined. So so you kind of have a basis of saying like this is what we're trying to accomplish. The blockchain. And this is what proof-of-work can do. And yes, proof of work is stickier. Great job, Satoshi. So then, the natural question asked, is under any assumption realistic or not can proof of stake achieve, that same level

of security and that's step one. And so or Boris was published in 2016 and it was very impractical protocol. When it first came out, it was tightly synchronized and had some undesirable characteristics about. But it was basically a proof of concept for saying that the security models models are identical. So they're both provably secure. Whatever you get from proof of work. In terms of what it can construct, you get the same thing in terms of proof of steak

or what Atkins constructs. That's a good starting point. So you have Theory and then the next step is, how do we go from Theory to practicality? How do we actually take this thing and put it into a real-life system and something that works. So most of 2017 and about half of this year has been consumed with that practicality question. So you move from a synchronized model to a semi synchronized

model. You move to a model where an attacker can corrupt clients whenever they And you move to a model where you can bootstrap from the Genesis block. You don't need a checkpoint, you move to a model where you have composable security proofs, you move to a model where you know you have a delegation system built-in. So if a person doesn't want to show up they can delegate their

stake to stake pool. You move to a model where your random number generation is not done with an NPC but it can be done with random Oracle but and so it's much faster, but it's still, you know, you resistant against grinding attacks and things like that and it requires you to add a lot more crypto and like the RFC and perfect forward secrecy and these types of things that it's not an easy task.

So the follow-up of Ouroboros was another paper cold or Sprouts where we did about half of the heavy lifting and we've just released a paper today. Call the workforce Genesis, it's on the couch get website. Also just tweeted it and we'll be presenting both of those at your Crypt in Israel here in about a week and this basically seals off most of the

practicality concerns. At this point, there's still some little lingering things we have to clean up, but we feel this plus a delegation scheme is All that's necessary for actually having a production proof of stake protocol in a system. Now the next step is performance. So where do you go from there? You know, you've built this beautiful thing you can drop it in Bitcoin but run just fine with it.

Any blockchain which run just fine with it and run forever and, you know, as long as we've got our economic incentives aligned properly, you still can't scale as new users. Join in. It's still in the replicated system format. So you need to chard and there's a lot of opinions on how to do that.

So, there's It's like Amna Ledger for example or thunder Ella and others from the academic circles and these guys have come up with some Concepts and there's some engineering ideas like you guys a cosmos that think are doing some things. And Casper, certainly has some ideas with plasma. So everybody has kind of their own idea of how should we Shard EOS? For example, I think put Byzantine agreement on top of the pause and it's less about can you chard?

And it's more about what it's a trade-off profile. Usually, what ends up happening is you go from 50 percent Byzantine resistance to a third to a quarter, Got how aggressive you do things. The other thing is that performance tends to decline very rapidly as you Shard, if there are Byzantine actors. So if everybody's following the protocol and every absolutely honest and great protocol screams it's beautiful and if your Google or Amazon that's that's your normal operations, right?

Because you own all the servers but if you move to an actual Byzantine setting where people are unreliable or dishonest or trying to break your network, then you have to really worry about performance impacts for malicious actors and the types of attacks that can perform. There's some Some great research, for example, that was done with ghost inspector, which are directed acyclic graph ideas.

That obvious ohhara, unit em. Some Lipinski came up with, we actually Implement a ghost in aetherium showing that while ghost does improve performance. There are attacks on ghost that can degrade performance quite rapidly if you're clever attacker. So, you have to understand trade-off profile. So, that's the next step in our research agenda, after we close out the remaining Genesis and process-related stuff, and that's called Ouroboros Hydra, because it has many heads, right?

It's going to be sharded and at Point we think we'll it balance everything properly, it'll have the right trade-off profile. Little going to kind of have the right security design and so forth. But the nice part about the approach we've been following is that every step of the way we've been doing it with peer review, and with proper security

modeling. So, what happens usually, when you're building these protocols is if you want to add another MacGuffin, another feature to your protocol, then what ends up happening is, you have to regress and go back and say, oh, I am I going to break something. But when you actually have a solid security foundation and good proofs, and everything is composed of Able when you keep adding things, you don't usually

have those regressions. So you tend to see a lot of research acceleration at the tail so you pay a much, higher upfront, research cost to get everything started and get that pump primed but then what you're rolling, it just it all makes sense. It's all composable. It's all modular. It's really easy to parameterize. It the other thing is that it can work in different settings. Like if you want to go to a permission setting, it's really obvious, how to do that for like

a hyper lecture-style scenario. But if you want to go to a permissionless settings, there's also an obvious way to At the protocol to that you don't have to build to completely new protocols for that, for that setup. So that's, that's where we're kind of at with, with Ouroboros, big team. There's about ten scientists who work on it and they do different dimensions off and on and we've written, I think six or seven papers. I can't remember how many now they're just keep coming out.

I think, you know, if we ever go out of business, at least we can get into the white paper business. Yeah. 10 or 20 of these things, every year, something like that. But I'm pretty proud of the the direction of the Search, you know, the other thing is that this is going to be the age of the academic proof of stakes. There's some very tough competition coming with thunder token and thunder, Ella.

There's very tough competition coming with Al Gore and and so forth, and these are not protocols written by everyday people. I mean, like Sylvia McCauley has the touring prize that's Nobel Prize of computer science, and he's sitting at MIT surrounded by some of the brightest people and a legion of graduate students that, which is die to be able to work at his venture. Build something with them.

So the rigor and the standards and the community expectation, for what makes a good proof of stake protocol and what your protocol must be able to do is going to dramatically increase. I think over the next year or two thanks to, you know, tough competition and we're excited to be in that running. That's really cool. So yeah I mean I know like when I first read the Ouroboros original paper, I was like, kind of like this, isn't that? You know interesting then

prowess came out. I'm like, okay, this this is actually, you know, this is usable now, right? And so I mean I'm excited to hear what read this Genesis paper. Can you tell us a little bit about it? Like you? I heard you mentioned that you can't you have a way of a bootstrapping from Genesis without checkpoints. That seems like that's like the Holy Grail, right?

Yeah. Because like, you know, you know for my assumptions like once you're past the on bonding period, you know unless you have some sort of verifiable delay function like it's really hard to prevent long-range attacks. So could you tell us a bit about how you're doing this? I'm at a punt on that one, a little bit because we released a video today. So there's a 45 minute presentation on how reports Genesis Works in. We just released a paper and we're going to be doing actual

presentation on this. Since Euro Crypt in a week. So if I talk about it, now I'm going to front run the, the year, cremation. But basically, you just have to make some assumptions about the nature of the signature scheme, and how random numbers are generated. And then within that you're able to very creatively construct a model where you can get you. When you look at two alternative versions of History you can calculate which version of history is correct. Proof of work is real simple.

You know, just do a await calculation. You say, ah, this one has more work than the other. So that's my longest chain. So this just kind of gives you a Every way of doing it using the magic of crypto, but that particular crypto is a little involved and it's in the paper. So if you're really curious about it, watch the presentation. Read the paper. If not wait for the Euro Crypt presentation, and then we'll talk about it a little bit more openly, but we had to do a lot

for this paper. Like we had actually two papers. We were running at the same time, we wanted to reprove the Ouroboros paper using something called Universal composability and then we had another team that was working on this bootstrap. From Genesis idea actually was related. To our side chains, research. And so, we were kind of and then, what ended up happening is we discover that one needed the other.

And so, both teams merged and we went ahead and created this paper and it was just like a Mad Dash. It took a three months of Hardcore work and lots of revisions, but we got it out and I think we actually submitted it to crypto 18. So we'll show it off at your Crypt. And if it gets into crypto, a team will be in Santa Barbara and actually have a dedicated session of it. But read the video, a read the paper. Look at the video. And and then Next week, I'll talk more about it.

Sure another question I have about our bows right. Is, what how do you guys decide to go between like, you know, in proof of states is usually like the chain based model and the PFT base model, right? Answer Cosmos were working on like tender moment, which is a very bft Focus way of doing it while, or Burrows, and it's descendants. Seem all are more on, like the chain base side.

And I remember like, you know, one of the I've actually had this argument with you on Twitter before about like, you know, you your claim was like a synchronous. Networks are impractical that like you know week synchrony is good enough for all real world situations. So could you explain a little bit? Why of that like thought process there?

And yeah okay so if you're electing an epic and you have a bunch of slot leaders and there's a degree of professionalization amongst those lawyers, meaning that if you You in reality, you're always going to have some degree of federation's. So whether it's a mining pool or a steak pool, there's going to be, you know, some actors who set up dedicated servers, they run 24/7. And in the entire history of the Bitcoin Network, it's been Fairly reliable. Blocks are generally produced

roughly every 10 minutes. There's a little bit of variation there, but it's been basically as expected and people have been pretty synchronized throughout the entire set up. So it's more of a practicality argument where you like asynchronous nice to have. But first off, you know, you have theoretical things like fish Orleans.

Patterson, you have to worry about when you're talking about asynchrony and S like are you ever going to really be in a network operating mode for a system like this where that's

going to come up? So and practicality semi synchrony is sufficient where people may not necessarily show up on time but eventually they'll show up with an about and that's what prowess is all about is to say, okay, well, you know, within a reasonable amount of time, they'll stay synchronized and we're semi synchronized and there's a way of kind of sorting all of these things out. Just like we do with any Normal consensus protocol.

You know, if you're super worried about it, we could probably reprieve everything in an asynchronous model but you know, the downside is we'd probably regress a little bit and Byzantine resistance. So, we'd probably regress a little bit in terms of performance for the system.

But I mean for all intents and purposes is if our goal is to have consolidation around a collection of State pools for the large ship Network. We anticipate that things will be probably running in a synchronize mode or semi synchronous mode. I mean, just to give you an example of Bitcoin, There's the karela relay Network and the Falcon relay Network for the mining pools. Actually, get to see the blocks before everybody else because they actually want to tighter couple themselves.

The other thing is our Network model is different. Like we're moving from a traditional Network model to something called Rena, recursive internetwork, architecture. So from the outside it kind of looks like, UDP going into this black box of Madness. But basically because of that assumption and how we connect these notes together and because you actually have a permissioning system, thanks to the election system of Ouroboros.

You really can create a sink As private network of State Pool, operators or slot leaders, that's permissioned because they're elected. They have credentials to prove they belong there. So you can use a different network protocol to guarantee that setup. That's why I don't worry about it too much. I mean, it's a nice thing to worry about from a theory perspective, but at the end of the day, it's kind of a Much Ado About Nothing. The other thing is, you can

hybridize these protocols. That's what EOS did right. They serve as chain based models dpos. And they're moving with Byzantine agreement on top, so you can combine them together if you really want to. And there's some evidence that that might be a good idea, Elgar, and also looks like it's doing is it's starting was like traditional Byzantine agreement and then it found a fast sortition process and they dramatically spit things up. So, that's kind of the best not answer.

I can give you to your question. It's like I view it more as a, it's not a big concern. And if it is a big concern, we have a mitigation strategy for it. But in reality, if our network is consistently, running an asynchronous mode, there's a more serious problem at hand than the consensus protocol were using. It's a participant For a problem. So the incentives are wrong. So let's challenge like zooming out little bit. So you have developed like Ouroboros. Now then all over sprouts and

now Ouroboros Genesis right. Star Trek Wrath of Khan references here. Give us Genesis. So, actually like this like a lot of teams in this space working on proof of stake in in parallel. So there's there's Cosmos, which is using Practical Byzantine fault tolerance. And other Byzantine fault tolerance, algorithms invented earlier.

And it's like, fitting them with coins and the needs of a Like it's it's it's combining practical Byzantine fault tolerance with with the fact that the people that want to come to consensus, need to be the coin holders at as taking coins, right? Then there's Al Gore and which is on which we did an episode, which is also using a different kind of Byzantine fault tolerance.

Things called Fast and Furious, Byzantine fault tolerance invented a decade back and it's combining it with some clever cryptography to decide on who Should be the party's doing the PFD. Then there's etherium, which is a different flavor of proof of stake, which is, as I said, availability, favoring proof of stake rather than consistency, favoring proof of stake. So the thing with Cosmos and Al Gore and is once a block appears and is confirmed, it's confirmed. You can't go back.

Whereas any cerium is more like proof of work, where chains of blocks appear, and you're not sure that they are Confirmed but you will be sure that they are confirmed after a while. So in this whole kind of ecosystem of projects pursuing different approaches. Tell me what like what is special about our borrows and how are you differentiated from

the others? Well, it were Boris, you know, everybody always wants to say, oh my my thing is better than everybody else's thing and I could care less about everybody else's thing. I really, I couldn't care less about it. The thing is that it's more about saying, look, we have to get the theory, right, we have to get the security foundations, right? We have to make these Concepts and ideas accessible to the

university environment. You see what we did is, we walked into an environment where if you went to a cryptic, Ography conference like crypto or you're a Crip. You say, I work in a cryptocurrency space. I actually did this. I went up to diffi at crypto and I said, Tiffany I work in a cryptocurrency space. He grabs his glass of wine and walked away from me. He like didn't even say anything. You just walked away and I was like, but what just happened?

So the brand of cryptocurrencies is is, is is badly damaged in the cryptolocker for community-wide and rightfully so because what's happened is you have all these people coming around making These magical claims about performance and security. They don't do any of the basic stuff, like, build a model, write a proof, clearly State your assumptions, tell you what you can do, what you can't do.

So the first goal of the Ouroboros, agenda wasn't to go and build the best fastest, most amazing protocol ever. It was rather to introduce the entire proof of stake problem and the in the grandest possible way to the entire cryptographic community, and we've gone to hell of a lot of conferences,

Financial crypto. Though, Euro Crypt, crypto, a C and S, you name it. We've been there and we've had hundreds of conversations since, for example, we published the Ouroboros paper, I think it's been cited more than 50 times seven papers have been derived from in or done things with it or built on top of it. And what we've now started as a great conversation in the cryptographic community about what is the design space of proof of stake in general?

Like, for example, what are the incentives need to look like if you are going to do delegation, what is delegation look like? How do you do cold staking? You know, how Ameliorate some of these meta concerns, like we haven't discussed this one, but it's a big one. How do you handle exchanges? They on average, hold double-digit, percentages of the

entire supply of the currency. They don't own the currency but they would technically be eligible to participate in consensus with a proof of stake style system. Right? That's a big problem. That's like they have the they don't own it but they can control it and they can derive value from it. That's not a concern proof of work has so it was ameliorate their strategies to mitigate, but it did But you know, these things need to be discussed in a broader context.

So the first major goal of Ouroboros was just have that conversation and pick best practices. And we were very pragmatic if there was a better solution like we, you know, Snow White, came up with something or tenorman, came up, something that we sell, felt was better. We take it cited. Put it in and there you go.

So that's step one. So anybody using our stuff knows that really smart people have checked it and that it's gone through a very rigorous process and it's kind of created a standard step two was in the process of having that. Conversation. Try to get a sense of the impossibilities or the real difficult to do things it because I'm getting. So tired of people posting a paper from Andrew from blocks dream about this as y proof of stake. Can't happen as if it's Canada

or something like that. I get so tired of that, you know, it's just like guys I would much rather in the academic Community have all of our sins be and there are numerous sins, right? And we've even discovered some like, we have a paper on something called steak bleeding, that we discovered along this research.

Process. So create a way of going about explaining what are the trade-offs and what are we giving up when we move to the system and let's not have that connected to financial incentives or to Cult of Personality. Let's try to have that connected to an objective truth. So these are ton of to Metta advantages of the Ouroboros protocols that third-party verification and that kind of Festivus style airing of

grievances of your protocol. Then in specifics, the nice thing about Ouroboros is by its design is very modular, so you can go from a permission setting where it kind of looks like POA or Like that it runs in like like a mode that you would expect to see for something like bft simple to something like running an actual global scale permission was Network.

And there's a way of tuning, the protocol to behave in both of these things with kind of a common core to it, and it borrows a lot of good best practices. You know, like this notion of an epic, this notion of slot leaders, great because it allows you to construct a heterogeneous Network stack as opposed to homogeneous, once you have information system and you can really embed, defend yourself.

Against DDOS, and a lot of things as a consequence of that and there's a Litany of other little basic design principles that we've rolled in. The other thing is that we're very agile and the way we've been going about Ouroboros, the team has gone through. I think six or seven major revisions of the the protocol since Inception of 2016. And we're probably to go through another six or seven revisions over the next year or two as we learn more.

And every time we do it, we gained some new dimension like this bootstrap. From Genesis is a major advancement and I think a lot of POS vendors are going Be Inspired from our work and modify their protocols accordingly to try to capture what we've done so far. I think only Al Gore and and Ouroboros have this particular property. So that's that's more of a meta point. I think to your question of why is it better? It's more of a question of what does the space as a whole demand.

What you know if you're an investor or an external person the papers are getting too complicated the read. The technology is getting too complicated too much domain-specific knowledge you have to have the sort fact from fiction. Action. So rather what you need is trusted third parties or a trusted third party process to verify that the things I'm saying are actually, right? And so that's why peer review so essential second, we need to have better conversations with

each other. And in the problem is we have commercial incentives. Not to have good conversations with each other. Because if Bob has created his thing and I've created my thing and we have competing tokens, Bob doesn't want to make my token better pop wants to make his token better. So he's going to be closed off.

Unless I Got Bob's token. So in the academic world is kind of like a fair Commons where we can have these conversations and quickly learn from each other and steal from each other to try to converge to a collection of good design principles. And then third, you have to get much better about. What are your business requirements? For the cryptocurrency that you're deploying who gets to be in charge? Do you want to have finality or probabilistic finality? Do what do you want to have for

these types of systems? What do you need for your business domain? Do you need really fast settlement or is it okay to have? Much longer probabilistic settlement, you know, it's like what do you actually need in that that set up? And so what we'd rather have is a spectrum of protocols Ouroboros. Being one, El Gran, being one tenorman, being one another's and then what happens is once you collect your business requirements, for the blockchain

that you need and system. You need, you run the, the you spin the wheel. And then it says, Ah, this is the flavor that I require for my system. And when you adopt that the hope is that because they have a common DNA in terms of the rigor, the Already in the design, you know, that whatever you're implementing is going to work well, for you the system architect. So I think this is the process that needs to be followed designing consensus. Algorithm is hard guys, and it's

not a new field. It's been around since the 1970s and there's a lot of people who know how to do this. Really, really well, what bothers me is when people just go and do it and think they're experts at it and they make outlandish claims, you know, for example, The hyper Ledger guys. They're very grounded. They're very realistic people. When I go talk to Christian and I say what are you guys using? They say bft simple. Here's why the guys written literal. The textbook on distributed

systems theory. You're either reading that or Nancy Lynch's book or something like that. It's a good book. Okay. And then you go to the EOS guys and they claim they're getting two orders of magnitude more performance in this best practice, you know, bft protocol. And I've seen your thinking is the head of the icr and all these scientists at IBM. Competent and a guy with a

bachelor's degree from vintage. If Virginia Tech is just a solvent and he's come up with a system that performs two orders of magnitude better. It's crazy. And let's say it does perform at this level. They're saying they can move blocks around 500, milliseconds around the entire Globe takes 300 milliseconds to set a single around the entire planets, okay? And and and and then I said, well, what independent verification, we have that. Did anybody performance Benchmark any of these things?

The third party firm provide. No, but they just say it. Hash graph says stuff. Everybody just says stuff iotus this stuff there's no verification that these things that people are saying are actually true and oftentimes when you deploy them you discover. Oh, there was something I was in accounting either. I've actually deployed a broken system, that's not secure at all, or my system is secure, but it's a hell of a lot slower than

I claimed, right? I've heard, she people like claim, like ten, thousands of TPS and I'm like, where did you test that? It's like, oh, on my local machine, right? That's not how you test the distributed system. No, you know, it's so It's so it's so this is my biggest gripe for it.

So the point of the Ouroboros project is to try to separate fact from fiction to try to Fetter eight, the POS problems that we're having as a community to try to create a trusted Commons, which doesn't have a financial incentive to pick, winners and losers. Rather, it's just focused on what's right and what's wrong and to try to have an intelligent discussion about trade-offs and intelligent discussion, about things like performance and benchmarking and

best practices and so forth. As the inheritor of that our conjecture is that the output of this. The process will be a really good protocol for cryptocurrency. It might not be the best protocol for your cryptocurrency but for cardano we feel that it will converge to that particular State and every project will benefit from our research because it's all out there. We try to annotate as much as we can and and anybody's free to borrow anything they want, there's no patents.

It's completely open source. I love Silvio to death. He's a good friend. I every time I see him, I complain about the patents and I'll Grant I think that's counterproductive for the space so we've chosen to follow open source philosophy. Safiye. And that's what we're trying to accomplish with cardano.

As a whole, is that every building block in the system, whether it be an interoperability building block with side, chains or performance, building block with Rena and Ouroboros or a governance building block with the Treasury System in the voting system. That's all out in the open domain. It's all through peer review. And you know, if we got some wrong you have a different opinion, that's fine, change it.

But if we got something right, everybody in the world is free to use it and it just it makes all of our projects better in a certain respect, right? I mean now, that's really good, too. Here because I know a lot of people like I've heard that like people criticize I reach K and cardano as like you're using like academic pedigree as a special marketing getting but like I find this is actually a

really good reason. It's a way of like reaching all Branch out to like the more academic community and so that sounds really useful and suddenly they don't need us. That's what we have to understand. Like these cryptographers have their own lives. They've been around a lot longer before us man public-key.

Crypto came out in the 70s. You know what we have done as a community is we're kind of co-opting cryptography is brand and its really pissing off the cryptographic community because they say, look guys, if you're a full stack Ruby developer, you are not a cryptographer and just because you can Implement one of these. Protocols doesn't mean you can design them, and make them secure. And what they're doing is they're having like this acid

flashbacks of the 70s. When the very state of cryptography was anybody who knew how to write code was implementing their own crypto, and they're violating every basic principles, you know, Security via obscurity and, you know, they were getting proper random numbers. It's like, it's like just horrific when you actually look at these things in practice, it's not elitism. It's just a science. I mean, it's kind of funny and everything else were okay with professionalisation.

Like, you would like your doctor to actually be certified. And you like your doctor to have actually gone through residency and proper training, if he's going to perform an operation on you, but then in cryptography is like totally okay for somebody to have no professional training or knowledge.

But then go implement. That's going to keep you private and secure and prevent, you know the Iranian government from knocking on your door and black bagging you because they discover you're gay or something or they discover you've been using it illegal crypto currency or the same for China. Yet it takes an equal amount of training to become a cryptographer as it does to become a doctor. In fact, in some cases more, you know, you're really at it in your 30s. So it's just it's just really.

And I think what we need to do as a community is respect that there are people came before us respect that these are very Hard problems and respect that these problems are not going to be solved in one grand paper and by one person they're going to be salt and stages as a community, over a long Arc of time as we, as we build up normal, computer science, right?

Like basically, we have to be able to like, talk the talk so we can, like get the ear of the people who've done it and I'm trying to like, start my own saying, but which I've been pushing ever since, like the Neo Fiasco, I've been trying to start the saying like, don't you The already have. Don't roll your own crypto. Don't roll your own consensus. I'll go quickly. What did the network break? When one note broke? That's yeah, this intolerant.

Yeah. It was just some weird stuff going on. So, another question I have about Ouroboros, right? One thing I've always had some trouble, understanding, is like, in a lot of proof of stake, algorithms, like Snow White or borrows, especially in the affinities stuff. There's always just like, huge focus on randomness Well, which I never quite understood.

So, for context and tender, meant we do a just so there's every block has a proposer and we have a deterministic round robin and like I know who the proposer one block from now, is I know which only five blocks and I know it's going to be 2000 block from now and you know, maybe it has something to do with the fact that tender meant like distributes Rewards. We to all the values and all the validators are because of the bft nature. Everyone is participating in it.

But like, to me, the biggest thing that I understand Randomness is nice. I think the biggest thing that can help with is like DDOS prevention. But why the huge focus on like the randomness? Well, there's partly Legacy partly practicality. So most, if you do a literature review, a cryptographic attacks, or look where systems have been broken, almost, always there's some sort of Random Number issue at the end of the rainbow and we're like, we screwed up somewhere and there's some bits

got leaked or something. And there's a bit more to determinism than we'd like to admit. So cryptographers are professionally paranoid about how clean the randomness is as a basis. The other thing is that Our common best practices that exist like you can use MPC. For example, to develop random is shown makers scheme from crypto. 99 is one, we made a modified version of it, that's linear time called scrape.

But in general, if you say okay the security assumptions in my proof rely on, you know, a Pure Source of Randomness then your system is not provably secure and less you know, you have that. So you have to put a lot of work into your Paper and the cryptographic community holds you a very high standard to prove that you've done. That that's why is almost seems disproportionate a lot of efforts put into the explaining that in the paper because it's

just a community. Expectation requirement no more practical sense. There were a Litany of attacks in early proof of stake like grinding attacks where you know people could buy us their chance of winning to favor them just by

careful selection of things. And it's like is so you would like to make sure that you've ameliorated that it's a historical problem in the space but Do it again, it depends on your network topology, you know, if your dpos for example and it's everything is 21 nodes or 101 or whatever the Quorum set is and you kind of know the order that they're doing this, whether it be ran, round robin or not, does it really matter as

much? But Randomness, well, there's some question there, but not really. Whereas, if you're actually going to elect a true Committee of people Porsche proportion to their steak, you kind of have a different need for that. The other thing is, if you build a source of random is carefully within your Tikal. That becomes a cryptographic beacon that you can reuse for collection of other activities. So let's say you have Smart contracts that require a source of randoms, it's a horrifically.

Bad idea to have people roll their own source of Randomness within a smart contract. In fact, I think there's a paper out of Cornell that did an analysis of the rngs in smart contracts and they said these things failed miserably or might have been out of UIUC. I can't remember which group did it, so, it'd be nice as an API to say.

Hey, we have a beacon built into the protocol and because we've done a really Good job of making that as pure as possible, that becomes a public utility that the blockchain provides in addition to consensus that can be reused for other building blocks, whether that be lotteries or player matching protocols, or these types of things. And, you know, that that's a fair source of Randomness which is very valuable for all cryptographic.

So it's kind of a mixed bag part of it is Legacy because when it wasn't a focus things went horribly wrong part of it as a community expectation, where literally your paper could sometimes not survive, peer review, if you don't spend enough time talking, Ink about it and doing things with it, part of it as a public good. And part of it as a structural property, depending upon how your Quorum is setting up and you know how you're voting on people and systems like

Ouroboros or algorithms. For example, do require up here source of Randomness or really good source of Randomness to operate with a with proper security. Okay. So one of the interesting things about our car Dino is most of your implementation is in is in Haskell. So you have chosen has Haskell. The only other project that has chosen a functional language is stasis right with. Oh camel tone.

Okay, Tina. It also implements their blockchain and Haskell and also digital asset Holdings does all their stuff in Haskell but that's in the permission side of things and Barclays Innovation group is all in Haskell as well. I think risk. Black is there? So it if you look for it you can find it, but you're right. It's not a common language choice. So what why did you make that choice? What's the add one digital Pascal here?

Yeah, so it really when it comes down to it, there's first the, the imperative versus functional war and I think over time people are starting to concede that. Even if you're on the imperative side like here, you love your, you love your Java and it just never got not love your Java. There are some things that make sense to do in a functional sense. Like that's why lambdas came to Java is job to a Java 8, right?

And so a programming in general is becoming increasingly more functional because we're at a lot less about resources and weird. A lot more about things like concur. Currency and weird. A lot more things like correctness of behavior and conciseness because these you know these repos are just getting so big and there's so many things going on. So I like functional languages because I just believe that

they're easier to reason about. I believe that it's easier to test implementations and I also believe it's easier to build distributed systems and functional languages.

And actually if you look at a lot of the internet giants, like for example Netflix their entire back-end microservices with Scala You know if you if you look at Facebook large chunks of their systems are running in functional languages or like the components that are mission critical have some sort of a functional component, same for Google and a certain respect so it's less of a decision of well, okay, should we go functional imperative for Mission critical software?

That's distributed that requires lots of testing potential verification in my view, it is functional. It's more of a question of ok, which functional language occupé it and there's a spectrum of functional languages. You have hybrid languages like clojure and Scala. Allah. And if sharp wear, when you want to be imperative, you can be imperative, it's call is great at that. Whereas if you want to be functional you can be functional.

Then you have purify languages like oh camel and Haskell or very pure in that respect. And that you have even more peer languages like Idris which is you know dependently typed language that is just mind-bendingly hard to write code in so why we chose Haskell was a? We have access to the royalty of the Haskell space. The inventor of the language, fill waddler amongst Others there was a committee that created it works for.

I 0 HK so when the guy who created the programming language happens to work for you, it's like it's probably a pretty good idea to at least consider that as a viable candidate for your system s. We have access to pretty much all of the Haskell consultancy firms. Well-typed twig. We've talked to F be complete and so forth. So all the people who are acknowledged to be like the top 5% of the space, in terms of development ability work for us or we consult with us or we talk

to on a regular basis. Third. I think there's a huge value in going Boutique as opposed to going mainstream. So we are one of the largest Haskell projects in the world and actually one of the most valuable and prominent has called project the world. So if you go to Haskell Reddit and you you go and say what is cardano, everybody in the red. It will know it as a project.

So basically you know, a lot of people Haskell space like us, no us. And means that we have a higher probability of getting independent contributors from the Haskell. Ready to come in and eventually over time. Commit code. Reader code. Give us feedback and so forth. Another reason is that, we're following formal methods and so we start with formal specification that we'll be releasing one of the few weeks for our wallet back end.

And if you want to prove that you've actually correctly Implement a code, you kind of really need a functional language to do that and you can do with Oak ML and cock. You can do with Isabel and Haskell. There's differences of opinion of what's better, but you need some flavor of that so that we don't really have an option. There it would be damned. Here in possible to do it with JavaScript or Java or something like that. It's really, really, really hard.

It also noting that conciseness is amazing, just to give you a sense of numbers are mantis client for aetherium. Classic is only twelve thousand lines of code compare that to the C++ Bitcoin client. It's like over 100,000 lines of C++ code so it's about a tenth of the size to do something that does more as a virtual machine and all this network stuff and things that are more advanced than than Bitcoin.

So yeah More sophisticated protocol and you use 10 times less code for a more sophisticated protocol. What does it mean? Means that just by lines of code, there's much less to do. There's much less to think about and it's much easier to write good test, Suites and could test coverage for that and reason about the code. So the conciseness has a huge maintenance and Technical debt value in my view over over for post Nets.

And so, I really like that now there's a lot of Haskell specific things that we really enjoy, and a school is probably the most advanced functional language because the community is really invest in an enormous amount of time into making GHC and other things really Advanced and they put a lot of cool things in with the type system. The whole concept of the monad is really easy to work with and it gives you a lot of tools for modeling concurrency and distributed System Theory.

There's also actually some beautiful things like Cloud Haskell for example which takes all the erlang goodness it was OTP and it brings it into the Haskell space so you like that's the another language you could look at like Erlanger. For example I think eternity is using erlang and that's a great language for building a cryptocurrency and as well don't have to make any compromises. We have erlang stuff that we can pull into Haskell as well. So from a correctness, a concise

has a testing a community. Oh one last thing personnel-wise, if you hire a Haskell developer, they probably have a master's degree in computer science or a PhD or at very least. They have a lot of professional experience. No one starts with Haskell, unless they go to edit Uber or Oxford? Or you like some really good place, most people start with an imperative language and then professionally out of frustration. They find functional programming, and there's something they like about it.

So if you hire Haskell developer General, you end up. It's a beautiful filter that gives you access to a much more experienced group of people that are more mathematically oriented they have an easier time reading formal specs, they have an easier time reasoning about things and they tend to be a little bit greater in the beard. So we wanted to have that added filter in our personnel and so we can have smaller teams.

More experience that are smarter and an overall I think that we'll have a better output for our process but you know we do more than just Haskell. We also write Scala code and then we also write a lot of JavaScript code as well. The entire dead list front end is written in JS and we try to make that immutable where we can but you know it's still an imperative approach and that's a separate team. Yeah I mean I think this formal verification focus is really

great. Like I was a huge fan of pesos as well for the same reason. I think that what you got especially like When you guys are doing the formal verification of your wallet because I don't think I've ever seen anyone ever do that before, that would be really cool especially, because that's usually one of the points where like the easiest attack vectors on on systems.

Another thing I could you tell me a bit more about the K framework is I know this is something you guys are focused on a lot and it's a very like cutting-edge topic that I don't think that many people are not let alone understand like even aware of and so Speak a little bit about what made you decide to focus on this when there seems to be no other block games, there seems to be a huge shift towards like webassembly everything, right? And so why the K framework,

right? Okay. So first, you guys should really have Professor grigory row shoe on your show. He's based at the University of Illinois, wonderful guy. He runs runtime verification, and he's worked at Nasa and he's done. All these really, really cool things, but he's the creator of the K framework and he works very closely, Only with Iowa HK, we actually have on contract, 19 people full time for this plank. So it's not an insignificant pool of resources but and they

do amazing work. Okay, so what is K all about K is kind of like a meta language. It's a language to build programming languages. So languages have syntax and they have semantics and syntax are your symbols and your letters and these types of things and semantics are when you chain them together. What the hell does that actually mean? Now it's a formal language.

So it has to be ambiguity free. And so what ends up happening usually, is the Graphic language designer will go ahead and write some document and we'll have all the semantics written down in a mathy style language and say here are your language semantics. So if you encounter a statement in a language here's how you're supposed to interpret that and then the developer will go implement the language and hopefully if they read the spec correctly, the they should be

one to one. So for any statement that you read there should be semantics to cover that. Now, in practice this has not historically been the case. Even in languages, like C for example, especially for languages like C. So what K is all about is saying instead of writing your operational semantics of your language in a math symbols that you put on paper, right? And encode in the K framework and a special type of markup and then what will happen is K can actually build your language for

you. So you have a correct by construction implementation of the language, all your tooling. Now where it gets really interesting is less about the construction of language that's really fascinating from a PL. Active and of correctness perspective and it's great for research, which gets fastening is translation. So what K can do with something called semantic?

Space compilation. It's something we're working on with RV very closely and it's a lot of work is that you can take a to find program and translate it into another K to find program. So let's say you write the case semantics of java which has been done and you write the K semantics of C which is also been done. Hypothetically using semantic space compilation. You can take a c program and translate it into a Java program and it runs just like the seat. Program ran.

Okay. And words this is interesting is then that means you can build the ideal perfect virtual

machine for your cryptocurrency. So in this case it's yellow it's the virtual machine that RV designed for cardano and then for interoperability all you have to do is just go and write the K. Semantics for lots of programming languages and the SBC stuff will just translate those languages right to your perfect v m. So this kind of helps you a bit because you know like the whole argument for webassembly is it's not Is the optimal thing for

cryptocurrencies. It's that a lot of people working really hard to make this as interoperable as possible with as many programming languages and they have to do a lot of work there, but the thing is, it's not fine tuned at all for cryptocurrencies so we can do is build something that's fine. Tuned for your application and then your interoperability strategies, just go and spend a few weeks writing semantics down and then you're done forever.

You just append those to the blockchain in there and if you want, if you're curious to see what they look like, just Google runtime verification GitHub and you Should or excuse me, K framework GitHub. And then you can actually see the semantics for Java and the semantics for JavaScript and things like that. Now, here's the other cool thing, let's say you version your virtual machine, you go from version one to version, two ordinarily. When you go to version 2, you have to update all the

compilers. So you kind of have like a maximum threshold of comfortable languages, you can support because when you update your VM you know, you have to say well if I have a thousand languages I have to update a thousand pieces of code to get all these things to work with my new version with the K framework. Don't do anything.

You just update the semantics of your VM and then the SBC stuff, sort it all out for you so you can support unlimited languages and you don't do any additional work whenever you version your system, upgrade your system and so forth. But guess what? Here's the best part let's say for the sake of the argument that webassembly wins out, we could write to semantics of webassembly in K and support that as well. And so translate to webassembly

or from yellow. If we if we want to take our backyard and seen that like there, I think there existed did. They are actually working on webassembly semantics and and we're actually also building a Kade llvm back end so that we can get basically a handwritten code performance from the machine generated code. So it's a lot of theory. There's a lot of things involved here. It's a deeply involved project. That's why there's so many people working on.

I think all of them have phds or damn near close to it. And there's about 10 years of computer science, research. That's gone into this particular framework and it's actually already been used in practice. It's a practical product runtime verification, for example, works. With NASA and Boeing and they do verification work with these organizations, not small companies and not low Assurance settings. So so we're really excited to try to bring this into the cryptocurrency space already.

It's given us, the ability to be very pragmatic, we wrote the operational semantics for the KE v m. So we actually have etherium semantics and will be launched our test net. We're going to actually launch a ethereum test that alongside the yellow test that. So if you're a solidity developer you have web 3 and Viper and all this other stuff. Guess what? It's gonna be one to one compatible just as if it was in a theorem known, but we didn't actually have to implement that

virtual machine. It's actually being implemented by the K framework. So when we launched our test net, it will actually have a correct by construction VM that's built right from the semantics, pretty cool stuff. No ambiguity, it passes. All the ethereum test vectors and it'll be the same for yellow later on. We'll start looking at things like proof carrying code and things like hooks in the VM that allow formal verification be

much better. Like, for example, of RV wrote a formal semantics for the RC 20 token standard and this is a kind of evoke topic right now because some of these ERC 20 tokens aren't necessarily Implement completely correctly and it creates problems so wouldn't be so cool. They actually have an artifact that you can have with your ERC 20 deployment, that verifies that you follow the specification, so you get a proof of correctness with that.

So you know, that your ERC 20 is right, you know, if you have billions of dollars of value behind something, Allah owes probably a really good idea to, you know, to verify that that token is correctly implemented. And these are kinds of things that are going to be really easy to do in our view when yellow comes out, because we've custom-built the, the VM to accommodate that, but we don't have to sacrifice interoperability. Now, here's the other really

cool thing. Let's say that you want our virtual machine to support your language. Eventually, what you'll be able to do is write the semantics of your language in K and then issue a special transaction to embed it into the Block Chain itself, then we, as a developer, here's how your development experience looks, you write your

contract in that language. And you go and put a header in the thing to go, look up on the blockchain for that particular language, and if the semantics of there, it can pull it. And then use the SBC mechanics, just translate it to run on the yellow. Yellow.

Don't have to talk to me. Don't have to say, Charles can I get support or go and build a complicated compiler or anything like that, you just have to write the semantics of your language which you already have to do if you're creating a new language for example. But now there's a more rigorous formal way of doing that where, you know these things there and there's a lot of other things like debuggers and, you know, all this other framework that will be interoperable between

each other. So, K is great project. K framework is just phenomenal, piece of work and it's being incubated at a major computer science institution. The University of Illinois Urbana-Champaign is. I think that in the top five of all CS schools in the world or at least in the United States, it's right up there with MIT and Carnegie Mellon and there's and it's known for formal methods and pl. This is a big hub for it, so it's got kind of the right balance of practicality of

theory. There's definitely the right team working on it. If you guys want to know more about it grigory. A wonderful guy to bring on and I think he'd be able to give a far more Justice Decay than then I could. And that that seems like an Federal, she asleep awful invention and thing to adopt for smart contracts, right? Because at the end of the day, developers going to want to write contracts, the languages

they want. It's kind of funny when Joe or any of these other guys from a theorem. So like aetherium is one, it's inevitable. You know, we have all the developers is like you have all the solidity developers, the language, you created yourself but how many Developers. Do you guys have where you have a C++ developers? Do you guys have like the vast majority of people who write code, do not know how to write code or are not writing code for your platform?

So you need to be pragmatic and create a way to bring those people into your ecosystem and that should not be using different programming language and throw away all the things you've come to know and love and your entire career. It is said bring as much of what you you have into our system and it should just work now. It doesn't mean it's going to be secure, doesn't mean it's going to be practical.

It doesn't mean We performance that doesn't mean it's going to optimize gas cost all of that is like facts and circumstances. But it says that you can use the stuff you're already familiar with and then you can have a conversation about those other questions over time as those communities and merge code. So now we have a guest idea to go to the shoe so we'll have them. We'll have him on epicenter and

discuss the create a framework. Charles, thanks a lot for the great conversation over the past hour is like, whenever we invite, you will learn a lot of Of things that we never knew about. I remember the last time you came on the show prior to the show, you showed us your collection of books and that was mind blowing in itself. That that should be an episode, you know, like Charles collections of books, I don't know if this one off, did I?

This is actually one of my favorite math books, it's something I read. As an undergrad naive set theory from Paul. How most did I show that one off last time though? I know that's new to me so so it's like if you ever actually become serious and You have to take set theory and Math logic. And anyway, how most wrote, this is kind of like a primer to help you learn about things like Russell's Paradox and but on Starsky and you know, how natural numbers are constructed and so forth.

And how most is one of my favorite authors because he followed, what was called the inductive book method. So basically what he would do is he right the first chapter and then he'd go and write the second chapter and then go back and rewrite the first chapter that he go and write the third chapter and go back and rewrite the first and the second chapter. So if you ever read a book by Hamas, the The first chapter is amazing. It's like the best thing you've ever read.

You're like, wow, this guy is such a great author. But then something happens that the quality tends to the crime is good for championship last year. Terrible, the hell, is this guy talking about or something like that, but wonderful book, highly recommended. And she ever wanted to know about set theory and pianos axioms and things like that. Cool. So we look, we look forward to having you again, perhaps, when you have the next release of card.

I know, I think that's the Shelly release will probably invite. Back and talk more about your smart Contracting system and other elements of God. I know that we couldn't touch on today. So if your listener, thank you for joining us. Today, we release new episodes of epicenter every Monday or Tuesday, And subscribe to the show on iTunes SoundCloud or your favorite podcast app for IOS and Android. You can also watch a video version of this show on YouTube

at youtube.com slash epicenter. Bitcoin, we also Lise recently started a guitar Community to hear more from our listeners and what they'd like to see. You can find that at epicenter .t V / Gator and we always welcome iTunes reviews that helps us improve a nitrate on our delivery so do write some reviews for us on iTunes and we look forward to being back next week. Thank you.

Transcript source: Provided by creator in RSS feed: download file
For the best experience, listen in Metacast app for iOS or Android