Hashing It Out
Hashing It Out

Episode 7 · 3 years ago

Hashing It Out #7: MIMIR Blockchain Solutions

ABOUT THIS EPISODE

On this stupendous episode of Hashing It Out, we touch base with Hunter Prendergast and Forrest Marshall of MIMIR Blockchain Solutions about the technology behind their multi-chain blockchain service provider system. They discuss some of the economics behind developing their staking mechanism for ensuring trust in their network. We get into some of the challenges their system is tackling and it's unique approach which sets it apart from Layer 2 scaling solutions that exist.

Now, entering Ad Cind Castret work welcome to hashing it out APOCASP forWesolk to the atteck innovators, behind blocked in intrastructure anddecentralized networks. We dive into the weeds to get at whyand how peoplebuild this technology, the problems they face along the way o'me, Listengand learn from the best in the business you can join their ranks. Are I guys episodes seven of hashing itout. As always, I'm here with Collins, it was up calling Ocallin. Oh I see Wat you. Did there a good old home alone reference home alone? I don't know that one, youdon't tin it as like Abenycustellathing, it's like sago night Kavin, onight,Kevin Yeah. There you go anyway. Today the episodes a day is with Mamirblachan solutions or memered solutions with a forest and hunter. I shall sayhello, give u secret instruction as to who you guys are and what Mamersolutions is. So my name's hunter printerguest andthank you going for everyone was listening to th, I'm CTO, Mer,blockinsolutions h and I am a computer engineer- formerly a naval nuclearreactor operator and UEYI'm forst Marshall on the softwarearchitect at Momir bloc chain solutions. U formerly did work with Um smarlbuildings and green energy research. Um been working blocchain space for a fewyears now happy to be here: Cool, well, Um, I've Kindof gone overyour site a little bit and uh I've actually talked to a forest in the past.I think was it on telegram. I think it was on telegram M that we actuallydiscussed for a little while about like what you guys are doing and how what you try to bring to the space, butI figure maybe I'd just let you guys do that in your own terms, like what whatis Mamir, what is this bridge, your building and and how? How does it workand what does it do and what will it enable people to build on top of it? So the the fundamental cremise of whywe set out to build what we're building is simple. It's that we've seen s blockchains and blotching services proliberate and reach broad, an broaderaudiences. We are accrewing more and more non technical users, and so in theprocess of having that happen, people are trying to simplify and make iteasier, which is exactly what we should be doing. Unfortunately, the short cutthat a lot of people are taking is that they're, taking a normal set of notesand putting them behind a restful, a Pi. So this is essentially, if I want toask about something in a Blockchain, I normally ask my local node. In thisinstance, I'm asking someone else's note on a web server somewhere and unfortunately, when you do that,especially when you do that with things like the Atheorian Blockchin, where Yohave complex smart contracts and complex stateful information. There's no compact proof that you canuse to verify all that information, or at least no one is using them right now,which means that all of that information being served Um iseffectively with substantially less security than what was directly on theblock ching and that's really. The problem is we neededto increase the security when communicating between edge, connecteddevices and block Chan based Infrastructune, very cool. So what are you doing toactually prove the security on this...

...like how like h? So let me just let mebefore I get into deep into that question ECAUSE, that's! I think youget O go down t a technical arrive at whole, probably Le Just talk about what these edgeddevices look like and how people would actually interface with your system andwhat what Um, what kinds of users youre actually reaching out towards you saidless technical users, but we're still talkng about a technical audience. Itwull be integrating with your system what kinds of devices what kinds ofapplications do you see this baking used with? Well, I think that it can beused for a number of different things. Um embedded devices are absolutelysomething that you could construct very justified argument for m havingbenefits to come out of these types of systems and, honestly anytime, evensomeone is using a mobile device if they're interfacing, with the BLOCKCHANtechnology of lacing service behind the hood, it's substantially more expensiveto use blockchains, and so, if you're going to use them, you may as wellinherit the security benefits of them, which means that, if you're using aMobil device, there's not a good mechanism currently to meet that demand.So even if you're, a technical user or a non techni, Chol user, we're nottrying to solve necessarily the uyux Um. There's a lot of companies doing thatvery well we're trying to solve a more fundamental problem of creating a scurecommunication channel between these devices. We can definitely get under thetechnical rabbit hold, but I think H, I think, an interesting way of lookingat it, and this is something that I at least what I gleaned from when you cameon. The BIG CONPO gas flagship show wasthat, because you'ren necessarily serving directly to the end user, when you're doing- and atleast the way I saw it- was insentivizing people to run full nodes,then also run your service and then serve this secure information to peoplewho need information directly from a block chain. Is that kind of where you see yourself sit inthe textstack of going from data on the block chain to data on someone's phonefrom a desentialized application. Yeah we oftentimes refer to ourselves as adecentualized, blockchain it the Ey, Um and you're, absolutely right. Whatfundamentally, what our system is doing is it's insyntavizing people whoalready are running nodes out in the world or interested in running nodes toprovide a very specific service using our software clients, which allows people who want to interact withthe block chain more from an edgeconnected device, or they justdon't want to synchronize the entire block chain state nor to interact withit like many technical people will still simply rely on, like meatow maskfor exampleor Um to actually interact with blockchain state on daily basis,and so we would like to ensynavize people tooffer a secure alternative to centalized Apis Yeah 'cause right now. If I connect toe meatow mask I'm going through, I think it's a meadow mass. I don'tactually typically when I build it, build for my local pribate network orsomething like that with Matt actally believe you're, going to an API thatthey provide clarneted by third parties and there's about three or differentfour APIS, that they'll auto connect into various things. Tbut you're,absolutely right, such a hosted Oracle. It's a centralized system, that'scoming in between you and N. So how do you guys decentralize that in as notjust to centuralize, how do you do it in reliable and a scaleble way? Well, Ou d, You like to Takeyeah sure m.In short, I'm sure most of your listeners are familiar with the ideasof proof of stake. M antly you you ensure that a set of entidies havesomething to lose and that if they act maliciously, you have a mechanism bywhich you can ensure that they will be caught and punished Um. What we essentially developed is asecond layer protocal on top of we're building out our initial prototype onAtherium, but any SMARTCO tract anable...

...blockchain should be sufficient. Wedeveloped a second lar consensus protocol, which works rather thancoming to consensus. Around the state of the virtual machine comes toconsensus around the Seto entities who currently holds Stak and can be heldaccountable for serving API data and, more importantly, we use a system forproving to the requester that when Apidatas served to them, not only is itverified, but it is verified by trustlessly selected into these, whocould not have been known by the party that initially served their data,meaning that if someone serves Deta to me, even if they really would like tolie to me, they have no way of predicting who will double check theirwork or how many entities will deble check their work and ther'r strongincentives to catch liars. Okay, let me try and get that straight Soyeah, it's fun to try and do these podcastsover completely audiosike people have to use their imaginations. I hopeyou're not driving wile. Listening H, let's see you're sitting, as I see it,almost like a a mesh layer on top of the node, the nodes that are sinking agiven, Blockcha, we'll call it a terum for Nowlke. You said anhy blocked Yo ancan do tthis this network. On top of the people running,nodes are serving data to people who want information from the block chains.Now, when someone sinds a request, which means they say, I want this thingfrom this smart contract on the block chain. They interact with your API and thereis a way for them to get that information as well as a type ofguarantee that that information is correct, because it's checked from not it's checked from the person that gotit from as well as someone else sat right, multiple individuals, in factarbitrarily many, and so this is another fundamental assumption withoutgetting really technical, again, Um Y. U we we evnto talk about,centralized WB APS, that's a single way to acilitateed. We also have a lightclients, but what we've seen in light clientsis that as you get thesesprawling smart contract systems that have you know more and more complexinfrastructure behind them. Light clients don't scale very effectively.In these circumstances. 'cause you're continuously modifying states somewherein the system, and you always have to be able to aggreate all of thenecessary proof to know that those interactions were valid, and so this is kind of the worst ofboth worlds and stealing one of fours great lines. I love this one but you'redownloading a lot of data and doing a lot of work and you're still notgetting all of the security of directly interacting with the block chain, so wecot and set out with the idea that it wouldn't be great if you couldconstruct a system in which the amount of data that need be exchanged and theamount of computation that need be performed could be arbitrarily set.With reference to the value of what you're requesting I, if you'rerequesting Um the address through the ENS of the local pizza shop down thestreet, so that you can buy a pizza, you don't care all that much. But ifyou're trying to you know, buy a house, you very much care- and I wouldn'tpersonally buy a house unless I had a real note in front of me- teygot thewrong way but um. This is just for a frame of reference. It's yes, there'smultiple people double checking, and it's arbitrarily many multiple peopledouble checking through a recursive operation. Okay, and so obviously you don't wantit to be going out forever, so you're orsentivizing, so is it like a bountysystem? Is that what I'm not understanding? So you have this token?It's be two eyes. What it's called correct is it m. So is that what theincentive model is based around that token, the the incentive model is in terms of what's your incentive toactually do. Work in the system is just...

...to get paid m like anytheror. Anythinglike that for providing a service. The the token in our system is actuallysimply a reputation encoding, and so that is only something held bythe entidies working in the system, my serving data and that's an importantpart of proof of steak protocols where you don't want someone to be able tocome in and lock stake, where the failure of the system that they'reworking in is independent from the value of the stake like. If I, if Ihave a proof of state protocol for a block chain, I want people to lock the the currency or the token of that blockchain, because if they awful lot of steak and they use it to attack thesystem, they should devalue th their own asset. Fundamentally, and this kindof how some of the security ground mining works anyway. Um, if you, if themining pools that were large enough to actually successfully cause meaningfuldamage to the major chains, had they colluded to do that, they wouldimmediately devalue all of their mining rigs significantly. And so, even ifthere was some incentive to do that, it ends up sort of being shooting yourselfin the foot, so that that's the place where the token comes in is binding.Your stake to the success of the system Gotya, and what? What acentive dopeople have? I An e? How does the token itself gain value in an economic sense,ollness system? This is so the the analysis that we performed.How we, based all of our fundamental assumptions, was ony the idea thatthere is a in a world in which we succeed, t what we're trying toaccomplish, and in a world in which we were generating revenue through the actof providing this service to in consumers, we would be paying thepeople who are running our infrastructure for us, which means thatyou can use different forms of paditional economic analysis to say wehave a payment in perpetuity of this value hears. What the value of thisthing is, and so we actually based a lot of those economics around Um becoming analogous and structure andform to traditional e theory of mining, because the people we vew as the mostlikely candidates to be willing to operate on a business model wherethey're paid to run a computer somewhere either the alce or the cloudor the minors granted. The system that we've described does not require a mining rig. Um Tohave you know any valid interaction. You con fact do it with much morelightweight hardware, or you can use much bigger hardware and do many ofthese things on one machine. So that's kind of how we'r assessing thevalue is we're going to actually payt you, so it has an intrinsic value basedon what you're, generating and revenue that's kind of the way I see Um. The reason wmhy proof of work is sovaluable. Is that you've set the incentive such that? The only thing that you really reallywant to do is just be honest and follow the rules, because you're getting paidto do it and if what you're getting paid to do in the scenario oof Ma Mir,is just serve data from the block chain to someone requesting it and so you're,just kind of using what we've learned from howmining has ended up becoming the only at least as of right now properconsensus method in existence for large scaled networks you're usingthe incentive mechanisms around that to then fill a gap between the central lized services that we havenow in trying to centralize that so as like right now. Basically, what we haveis like people like Micrypto, running nodes, ether, scandadeo, running nodesthat you're just saying I hope you're doing it right. I mean we've seenproblems around this, at least in terms...

...of people using the was it coin: Market Cat API for pricedata and ther ability to manipulate those things to then make there make big money on theirbehalf. This is a way of decentralizing that scenario, without necessarily all of the workright. The work is just serving DAYDAPA. It also incentivizes people to actuallyrun full notes, which is something that is desperately needed in a proof ofworks scenario, because right now, the only way to the incentivise Theron, a ful notice ofmine, which is not an easy thing to get into. It, requires a lot of capitals so,like I see a lot of benefits and the reason why you did this is that I meanI guess the question in all this is you had to have seen a problem and the waythis entire space was moving forward is n? Is this like the massive gap you saw, and this isthe solution you came up with to fix it honestly were thiswhere. This all started was h. We were talking about building a pieceof ATTEC that needed to interface with mobile phones and what we realized as we ere buildingthis ADTEC out wewere talking about the really cool stuff you could do with it. Essentially, what we're describing isbased on some research ihave done long ago in university, where you could usecryptographic primitives inside of things like qr codes and other vitiallyidentifiable objects. The idea was, you could determine unique position inthree dimensional space reference to these little things and m. You couldbasically sell any flat surface in an augmented reality. World cool idea wayout there on the end of the you know, future stuff- that's has so manybarriers inter its insane, but in the process of thinking through all thatcool stuff, we realized men, there's no real way to get all of this data out ofm the repository of the block chain and into the device such that there's nocentralized trusted enity in the pipe, and what's the point of all of thisextra effort, we're doing with the blockchain 'cause, we could just use asecret database. If that's the case, you know, and so we really sat down andwe started trying to figure this problem out and actually I candistinctly remember the conversation force and I were having I'd say what,after about an hour of arguing, force Fin Litomiian. This is ridiculous. Thisis too hard to solve. We should solve this problem by itself and then weshould solve the other problems and that's where we are today we're solvingthe first problem. First, I don't know if we'll get back to the other stuff,but the first problem was the hard problemand it was the one that we realized everyone kind of had so yeah. That'swhy we end up where we are today. So I want to get a little more at somepoint into how you prove that the information that we're receiving iscorrect, but I I I really wantto Kindo hone in on the crypt economic side ofthings and yeah. I hate to do the S so early on, because I have't we haven'thad a guest on here. Yet who's really got a ACRYPTIG cript economic modelbuilt into there, assisting yet um that isn't like on a protocol there so um. II really want to know how you guys went about the process ofdesigning that model, and I know there's. It sounds like using Mcorrectme if he wrong dppls kind of system sort of. I guess it's not likeit's Marri groop mistake y. You could draw a anallogy to it. Yes, but how did you design this, and howdid you prove that, like, for instance, how do I know on your system that whatwhat kind of like restrictions and variables did you put into basicallyblockets, so that somebody couldn't crate like a little OPEC for memer? Youknow what I mean Wthe, so there's a few things that go ing to this. The firstthing that you have to be able to know...

...about is setn membership. I you need atrivial mechanism by which to know that he people you're talking with, are thepeople that are supposed to be there too. You need to know that, in the event of U collusion even collusion on a massivescale, th, the OPECKAS are calling it that the probability of a success issufficiently small. That um you can call it negligible or that at least youcan demonstrate the system converges to stability even under an attack of thescale of something like a fifty one percent attack, and then you need to in order to kindof pull those things off. The other sets of assumptions that kind of stemthereafter is that it should always be worth more to be honest than to lie, and it should. It should be structured such that youcan never know who's going to be double checking your worker and that you know that the informationdid necessarily come through one of the communication channels that we haveconstructed, and so that's really what Mamer servers kind of do in in theworld is we construct a transparent communication pipe in which we are passive observer? We don't feedinformation into the system, but we enforce that all participants in thesystem are performing Balad cryptographic operations and so there's a wot in that that Ijust stated which we want to kind of like pull apart and really go intofirst yeah. So I guess the first part is y. You said that you're you'remonitoring. What does that mean so um? Most of what our system is built aroundis trying to get the best of both worlds, trying to get the kind of speedand efficiency you get with centralized systems but maintain stronglycentralized security guarantees. So, rather than having a fully mash network,that's m. You are purely only making direct PRD peer connections. Instead,we engineered the system such that you would use one or more centralized,essentially like high performance message, K or content delivery systems,but that the cryptography done at all the edges would treat that centralmessaging system as an untrusted party and so for the initial role out of thesystem will be running that message system, but we've taken great care toensure that Um the community will be able to take. Take Back all infrastructure andcontinue to run it if we become a malicious actor, because if you're inthe block chain space, you got to assume that you may become amliciousactor and so when Hunter says that we're apassive observer. Essentially we see the messages going in through the pipeum and we have our own job in the system, which is essentially that ifpeople start misbehaving, it's our job to attempt to kill their connection asquickly as possible to essentially mitigate the damage that they do and som. In addition to the crypographic commitments made by the entities,theyre actually serving datea about the truth of the data, we make crypographic commitments aboutthe fact that intirvie is still in good standing with the system so that we canbe held accountable if we allow any entity that falls out of good standingwith the system to continue to serve an interact. So so there's sort of layersof checks and balances going on but Um. That's that's that particular Passivaldurations. We provide! U Commitments that at a given time, unentoty wasstill in good standing in the system. How does it end user verify that you'reupholding your commitments M on all this like? So this goes back to thetrust issue that I' KINDOF Bee Pushing d taking down the line. I really wantto know how are you establishing trust from end and on the entire system, whenyou yourself are CI Itin in the Middle Os, H, Thi Passobserver, with theserules that you have the capability and...

...responsibility to O t kick people outof the system Um? What is w to be clear about something we? We can close a connection Um all of the operationsaround the Prouf of stake protocol take place inside of the block chain soeffectively we're limiting harm because we are preventing you if, if you're amalicious party in your line, our job is to make sure that you don't keeplying to people as soon as we figured out that you have lied right. So weclose your connection and we're affectively acting as the PAM and sothen permission Acess management system. And so then we let the arbitrationsequence that describes how a ravocation of stake curs in a maliciousparty events. We let all that onfold inside the blockchain define by martcontract logic such that we are not capable of manipulating that piece ofthe system, and so we can g. We can go back into the you know all of the other pieces of the trust,but I wanted to make sure that was clear in what we had said is a secondago. Okay, so you have these smart contracts that you've built thatbasically maintained this trust mechanism. So anybody could techicallygo through the auto trail and basically verify that your work is correct. Atany point, it's not just about reum retrospective auditing US kickingentities out of the system has nothing to do with the fundamental security.That's for essentially reducing wasted work because we're trying to be asefficient as possible. computationally speaking, the process that is actually inturingthese entities cannot serve in the system is entirely on chaine smartcontract systems which add and remove into these from the sets which areconsidered to be in different reputation. States? U and allow forArbitration and accusation of different entities Um. Now one of the reallyimportant things in this system is the ability to verify,set membership and to do it trivially, and so we have a number of layers ofincentive structures, but one of the layers of incentive structure is anincredibly strong incentive to Um catch people lying about you all and yourlisteners are probably familiar with the basic idea of a mircle tree right. Well, I I sr A. I definitely are, but Ithink I think it's okay, if you want to explain it ATC, essentially more ses,our fren end developers, friends, Okar Um, one of the core technologies that makesum block chains useful, it is used in most box chains, is mircle tree, whichis essentially a way of using a very small amount of data to prove whethersomething is member of beset. And so, if I have a very small piece ofinformation like a Blockhash, I can construct a proof that can be verifiedonly by using that blockash about whether or not some piece ofinformation is in that block without needing to show you the whole block. Soit's compact proofs, there's somethings in a set, and so one of the strongestincentive levels in the system is insuring that Um crypographiccertificates are regularly created, identifying the Mircorout, Hashes orother proofs of set membership around the entities in different state in thesystem. You are allowed to serve this kind of role, such as serving requestsdirectly or UM, verifying other people's work, and the idea being thatyou can very trivially create proofs based on these about M. whether or not an entity fromvery large set of entities is Ingrup and you can greatly simplify theprocess of arbitrating lying about set membership,because if you simply use the small route of the proof as your point ofarbitration round set membership and then the requesting user who's tryingto get dead out will not accept any...

...information from someone that haven'tseen a proof of membership four, and so, at the end of the day, we wespecified these algorithms one such that they could be trivially encoded inthe small amount of data two we could share them and we could be heldpulpable if we were to share them with a cryptographic. Signature for a setthat was not valid as well as independent. Third partiescould transmit this data for effectivelyalmost no cost, which means that we're constructing a system that isintentionally engineered so that other people can reinforce or reassert whatwe've stated we're trying to not be essential identity in any place m. Butwe've accepted the the small amount of centralization thatwe have to in order to pull off this protocol, with the understanding thatthere is a long term play where we can pull ourselves out of more and morepositions of authority. As the system scales, it becomes more self sufficientand more secure on its own. It's kind of the idea of normal pro stak systemsthat these are systems that don't play Nice when you first turn them on. Whenthere are people in the world who have large concentrations in assets oranything else of that nature kind of like when you first trow on a blockchain and your hash rate is almost nothing Um, you can be subject tomanipulation, so we built the system such early on. We can kind of make surethat we're guiding it in the direction we want it to go and then kind ofprogressively step off from it further and further, which is ultimately what Ithink w we want to do is minimize both our own liability, as well as our ownoperational expense in maintaining this infastruction. So that makes sense tome. I actually think it's interesting, so the the the current kind of likesolutions for scaling- I mean, there's, there's you know like sharting and thenyou've got these laier two sluces. You got your plasma and r general statechannels, you've kind of got your own brand of a layer. Two solution, itsounds like like you're working on, has not really been described, H in a verygeneralized way. H to this point, Um, where you're actually cer in you knowlight clients are great and AL, but you're actually serving a truthmechanism that talks about the main net without actually having to havenecessarily the entire mainnet at your disposal. That's kind of a scalingsolution. When you think about it, I mean it enables no O s, ennaval scalingof the number of transactions, as you could do some sort of consolidationmechanisms in front of things, but you can also it's a scaling of m justgeneral aces M and data size like big problems. Thinking that that that blockchain is watcings are huge. You know they get ana grow, they continuouslygrow. Mobile vices can't handle that IOT devices can I handle that this is alight way of kind of executing trustless mechanisms without actually,you know having to have full participation in the network. A It'sKindo, interesting to me. So as a side note, I I keep s the more and more. I learnabout this entire space. The main overarching teame seems to be what are some new interesting ways tomercilize shit and then how do we vote on hat right h? Basically, the blocking spacesummed up in total treally is, but what I'm curious about now, maybeis is what is this? What does this look like? How does this change, how peoplecurrently do things? What does it mean for the developer, who's building,docenteralized applications? Now that people have a batter way ofgetting information more quickly with a trust mechanism from the block chain?Do they need to change the way they operate and then rethink the way theyretrieve data? But our intention from the Gigo was that,if you wanted to, you could treat us like a transparent, a web. Threeprovider object, I'm speaking in a theory in terms here for your listenersaren't familiar web three is the...

...standard library that most developersuse interact block chain and when you initially set up th library, you choosehow you're going to connect to the block chain, be web, sockets or remoteAPI, or something like that and there's one to two lines of codethat you specify, which defines what kind of connection you're going to useand then, after that, your API is the same. No matter what connection you'reusing underneath in its simplest form, we would like our system to work justlike that from the point of view of adapt developer. I add a couple F linesof code, and now I have a skire connection in the way that if you wantto set up SSL to ensure that when you're talking to a server you're, likeyou know, CDPs, if you, if you want to ensure the using hpsn your applicationmost applitations these days, that's a few extra lines of code to make sureyou did that right. But I kind of feel like what you're doing is almostliterally, that he centralized SSL or blockchains. That's there's. There isan analogy, so I mean it's a round cryptographic proof and we'reessentially trying to pull out the point of centralization regarding well Reallys, just single point:Failure in the the proof n of identity of individual, as well as the informationbeing provided and there's some other really cool things. If we have time I'dlove to come back and just talk about things in this realm even more, but the yeah the base idea is that we're wer we're trying to construct systemswhere we minimized the expense and increase the security of a interactionwith the block chain, whether you're a developer, an end consumer or even adevice, because really block chains are great for storing all kinds of kernels.Of Truth, like sets of Cryptographic keys that you wanted to use for anencryption set or set of chrotographic keys that need necessarily signmessages. Hashes of codelocks for suffer updates. You know things likethis. Where block chains aren't good at highthroughput, they probably never will be compared to Wa. Centralized system, butthere's a lot of places in the world where you don't need high throug, butwhat you need is a small piece of information that you need to know it'sup to date with absolute certainty, and that gets you everwellse. If you lookat like with Software B Day Systems, you need the hash of the coat to insurethat when you install us offer up they, you install the correct one when you'resending I encrypted messages to people all over the world. The most importantthing you need to do is say: Do I have the right public key for this person?If you do, you can take care of everything else. scurely the MESSEGEdoesn't have to go on the blockchain, but you needed a place where you hadabsolute certainty, that you were getting true information out and Ithink that's the by far the strongest Rorle blockchain has to play is givingus a place where that little Kolnel, the truth in the center of the systemcan be used to make sure that the rest of the system works right, Yep, fully agreed yeahso. So, to go back to the coin, for asecond of btoi Um, you say you're paying people are youpaying with the coin or are you paying with Hetheorum or like? How does thislike inor, in Order To maintain that that proof of state system hasintrinsic value? Ideally, we want to have something: that's not aspeculative vehicle. I we want it to have stable value. We don't want it tobe something that s just traded around all the time literay. I want people totake this thing. I actually use it for what's an intended purpose. 'cause thenI can. I can handle more bandwit Ri, and so we quite literally set up a businessmodel in which we can contract on a B tob basis on a bt C basis. You know and literally sell our serviceon a request basis. The expectation is...

...that, on a BTW C basis, you're going tohave to eat loss leaders 'cause all of the providers do it, but if you'retalking about the major providers and you're talking about setting upintrastructure for an actual desentralized application, nobody doesthat for free for anyone else. In the world right now, because running notesis expensive in the cloud I know what my aid of Usbill is- and I mostly justrun a few ones here and there for different projects, some of themintestage some of them in production. It's not cheap Um. So that's really. The idea is that willcollect revenue for providing this set of services, and we will happily sharethat revenue back with the people who are Um, providing our intrastructure,because we don't have to set up a massive, auto scaling, ComplexInfrastructure System. We literally just take a whole bunch of messages andfan them out across thousands of potential recipients, and then they canall do small amounts of work by comparison to a few centralized nogesrunning really heavy all day long. What is that whatis that Guid Callin? I was J, St kind of curious like howhow you you like, if somebody's in the middle of of committing to I guess theywouldn't even have to commit, I'm not really sure. I understand tha flow ofsome something if a note happens to drop off the network, for instance likethat, was in the middle of something. Does this impact you at all? Do youguys brisiliancy full? Like almost do you have any problemsfrom, the persectof our system? That's a dropd packet, Um yea hid the reputation. Um It'sdropping off. The network is knocking it the reputation in order to insurethat you don't have essentially denial. A service tack by constant coming onoff the network. Bu lokelf enforces a small timeout to ensure that you cannotrejoin activity when you drop out of activity for a small amount of time and that, but from the point of view of thecommunication protcal, that's just a drop packet. What what gets you loss ofreputation in the system in the long run? I you lost the token. That's Umactively serving incorrect information because we can't punish people fortheir Internet went out. You know, like that's, that's not a functional Um wayto build the system, however um the an individual commitment. If, ifyou lose that from the point of view of any communication protocol drop packetshappen, it just has to be Razilian to that yeah and so essentially how wehandle this is our communication protocol or the first implementation isset up over web sockets. This enabled us to do a lot of persistentcommunication by directional, which has some cool features for Blocchain,obviously, but what that means is that you can request a chunk of information and youcan get back the commitment to a piece of information such that the users Um unaware that anything is stillpopulating in the background they they get the Doubta to Lod their deatheffectively and then verification sequences can occur in the background.But if any of the verification sequences that are pending fail, alloutbound transactions are not allowed and the user is informed of the casethat Thereh's been an air relote page right. So the idea here is that we cangive you a nice clean. U Craft user experience a good Uiux, and yet we cancreate a mechanism to enforce the security behind the scenes. Acynchronously if for running, consists in connections and if any of them failthey time out. So it's it's default. Everything is default tothe state of failure and only on a successful Um verification response.Does it flip to the hey, we're actually in a good state position? So do youdepend on a single note ice like a point of entry? How do I access theseYounot? Can I broadcast to multiple nodes and n ensure that I get thecrrect response back from both like? How does this work? You could choose tomake the same request multiple times. However, the way the economics thesystem are set up, there's a fairly...

...strong incentive to not be droppingyour connections and so Um. The the dropackanalogy is M, one that Sh apenedvery rarely its scale. Well, I mean like let's say as as adapt,teth developer. I want to interact with the the MEMOR system. Once you send, Ijust wanna, I don't have the full block Chanon. I just want to read okay. Iwant to read this field on this smart contract atthis address and I want to pull down the IPFs addresses in this field andthen, but I also want to do it. I know that I need responsiveness and there'sa possibility that nodes can drop off the network and a frequency of like tosay you know ten percent of your nodes drop off the network withe every hour.I know that I don't that's unacceptable Mac, so I'm going to diversify my myrequest and send it to three different notes and pull down that idea of hsaddress nd, so y. The odds of me actually losing that as low is. That isthat going to cause me problems on your system, or is that something t that youcan make as many requests as you want m there's, I I think Youre. Your tenpercent example M that that would be a scenario where SOMONG had probably gonehorribly wrong, but yeah. You could absolutely make multiple requests withthe same mean for information and when you talk about the snappiness, whathunter was describing befor about essentially um confirmation. In thebackground, one of the very important things that we came up with the system,because you want good user experience, whichmeans, like you, said, snappiness, and so rather than Um, waiting for fullcomprimation before you update your Ui and Y, your m use your interface. Youupdate when you get the initial commitment. The software client that you're usingfrom US underneath automatically disallows rights of State unless allpreceding reeds of state have been confirmed, and that in essence, that is what you eed for the security it persists is. Icannot sind a rite of state and change some blotchane state on bad assumptions,but I can have my application function with a snapy user interface and simplyguarantee that the user will never accidentally send a transaction on badassumptions and just like, if you're, if you're browsing website and yourbrowser says, like you know, like your connection's, not private, throw up abig bed flag, you need to refresh. You can do thesame thing with Um this sort of system where, because at scale the economistor such that, you should almost never see UNATTEMPTA list's activity. If youdo you simply reset to the last known good state, so when you CA, say thaared the reedsthey h th y, they have to go through before the rights. That's actually areally good point in something hadn't considered. If I'm reading Fr like I',Say I got three reeds and then two writes and then three reeds and thentwo rites, all within a fourteen. Second time, Stan bially, I'm assumingthis is on a per app user basis of her Wallet Um. So if I you know, I would, Iwould have to have somebony if identifying that these pertilar transatthese calls and these transactions are, are basically the by the same person Um. So I sendthey're alwithin a fourteen second time fan. Is this a stack kind of scenariowhere you have to execute these reeds, send that data back and then you cansend those rights or, and how do I know that rights are even dependent on thereeds, so there's a few different ways to approach it so on? We are looking atways to batch, which is what you're asking about a second go. And yes, thisis something that we think would be of really great ideas to batch requests.It's not something that we put into the first place M in so far as being ableto get h. You know you're asking about putting messages in the correct place. All messages can be mutex based on aset of precommittals of randomness that the user submit. So this is part of theUNGAMABLE randomized routing thing that...

...we w're talking about earlier, butthere's effectively a built in EU texing method based on two hundred andfifty six, but numbers so collisions are pretty improbable Um and in so far as the instance, whereyou've designed a piece of software that say was doing a firmware updatebased on an Iot debice based on something thatit was reading on watching state. Obviously, in this instance, you wouldwait programatically at the top level on main loop for the ACINCERNENEverification to complete on the backside or if you were runningsomething like say, m, Qut or some other lightweight messaging protocol.You could design a mechanism by which you could use Um, callbacks or webhoksor anything any other number of methods where you would effectively inject theinitial request and then pull on a point until you could receive thecocompact completed proof at the back side of it. So it depends very much onwhat the setting is, but these are kind of just engineering problems. These arethese are things we know how to deal with. It's just younecessarily should think about thesethings when using these types of systems, so ultimately we're going tohave write a whole bunch of docks and really talk about this. We don't wantour assumption sets not to transfer well into the People Ho woldanl use it,because that's how you end up with horrible security flaws, so Soeothingis developers understand the concept of dependencies. So I think ifyou build some sort of dependency system into whatever library, that'sactually another thing, so you have this library that that that's not webthree and you mention that you can support multichain M, which is not asrelevant right now concidering. I therims pretty much the only game intown in a serious manner, but you built this thing in such a way that you don'tdepend nilivisarily, you're, killing me. That was my question Lik. Well, youknow great mines take a light cory. Once you tell once you ask the questionAngoro, just you basically knel it on the head right like I', I'm curiouslike so you could do multi chain, I'm curious about the what it takes to do:multichain transactions and because, if you're staking these coins on aspecific block chame, what does that mean across the blockchains? Is it atoken that works on multiple bloges and very smart people working on atomicswaps? So that's not what we're going to SA exam. However um forgiven blockchain, so longas it support smart contracts, the meet a very minimum set of criteria.Basically, all of them will Um. If you're trying to compete with thetherium, then you'll be able to run this thisone topic now in terms of the actual interaction. From the point of view ofthe developer, you probably wouldn't use web three you'd use that blockchains equivalent, because every block chain's going to do things a little bitdifferently, probably Um. Now, I'm sure at some point. Some very handsomeintelligent people will make a library that abstracts over contractinteraction across different bloshing backens, but in general, most of our system. The IDsbehind are things tare, very general toblatchings. As long as you have smartcontracts that can force a couple of very simple rules in their code, they'rTurin complete and have decent day testructures. They can, and as long asyou have signature, Verification, hashing and Al All these sort offundamental things- everything ports right over H, e fundamental assumption sets arethat you have convergent state that you have at least limited introspection ofstate inside of the blockshain. I can kdow about its own state and t. Itknows what cryptography and hashing is, and I mean that that's about th thebasis of how fancy we tried to get underneaththe hood. We tried to take really simple, well, founded concepts andconstruct a system that was resilient and didn't do any ground breakingcryptography. You know, don't don't reinvent the rules whereyou don't have to, because we know we have these really sound strongconstructs, let's utilize them to the best of our abilities and unique waysto do cool things.

That's Tiking nail it on the head onthat one. I I I have other questions that Maye move along to different typesof conversation. Calling do do evenything else on this line. No, please go it's Kinda like I mean, because you'vedeveloped this particular general framework that solves a problem of central acent centralization that we'vefound as as we've grown out. It shows you've had some foresight, orat least understanding on the movement of where problems exist in in a stack,or at least the problems you want to work on in order to make an actual inuser, have a good experience that has all of the security guarantees that theplacchain has. Where do you see problems Zix now like what holes? Doyou see on the horizon of this entire space? That need to be filled. Well, I, I guess I'll start off with one: that'snot necessarily inside of the space, but we talked about it very brieckllyearlier and it's. Moreover, if I could point at something and say man, youshould be using the block chain for this Um using the block chain for things likeDnsing, using the blacchanes for things like PKI using the blotching.Essentially, if you look at the Internet in the structure of how thesesystems run their huge data stores, that need be, u control and theyneeread by thousands of individuals or millions of individuals really allover the globe simultaneously and they everyone who's participating in thesystem needs to know that nobody's else is trying to screw up the record sets,and you know we can describe a lot of different systems where this technologyis plug in play, that solves other things, where we've done layers andlayers and layers of bandates that don't actually quite solve the problem.So if I had to point it where maybe the Tet can go, that's a place. No, ifwo're talking about internal problems for things that just have to be solved, I mean I think that really the transition in the theory of networking to things like wasom would be ideal for a number of reasons. Thiswould increase thes security around the execution. Potentially, it would alsoincrease the throughput of the system, so wals M Web Assembly for the there IMvirtual machine is more over what I'm referencing, and then I mean there's a lot of if we'retalking about the solidity compiler, there's a lot of very grossinefficiencies in terms of gas cost and gas structure. These are things thathave to be addressed when you say, create a Um, a a dynamic array and solidity you're,actually constructing a multilayer mapping that has all this rercursivehashing stuff going on it, a huge waste of computation, so there's better waysto do just fundamental batestructures Um, I don't know I could go on on boring things, butthen there's some other cool ones. Um I mean Yeh. It's it's a very difficultquestion to answer in part, because I think that there's a lot of smartpeople, who've alredy very much identified what the major issues are inthe short run. I do think that Um, I think the problems that people areworking on that strike me is the most important are theones that are infrastructure and fundamental preps things like stakeonsthings like Um mentioned sharting in plasmum. For butanything in the area of, like you know, let's reduce transaction costs increasethrough, but um some solutions have more problematic trade offs than othersso m, not going to speank much about the details that particular rea, but I think in general people who areworking to make the technology more...

...practical, I think, is where I thinkthe interesting problems Olin is going on because right now, I think sometimes there'sthere's so much excitement in the space, because we all see how powerful boxhingis potential to be lambos. It's insorand, we wwalk before we run O ap. A big part of the show, in myopinion, is not only talking about what solutions we'recoming up with this. All the problems is just even asking the question andgetting perspective on where the hell are we now, so that the people who arelistening, who might have fantastic domain extertisein a certain area? I understand where to aly that effort, because but themore we understand what the problems are about where we currently are andhow to get to that thing. We want the better. We can focus people of greattalent to get to those problems, and so there's no better people to d give thatperspective and the people who are trying to solve problems becausethey've run into issues like just like you said we wanted to do o this thing.That was really cool, but there existed this other thing that didn't exist.That was in the way. So now we're doing that thing because we have to, and sothe more we talk about these gaping holes in user experience, or you knowtechnical debt or just underlying meghanisms how blockchain work the morewe can try and get an idea on where we should be spending our time, instead ofmaybe making pretty dapts or focusing on things that the induzer has to careabout. Maybe we should be spending more time focusing on solving the problemsthat make those things exist at all. Well, I mean T, there's, there's atrade here and I I fundamentally agree. If, if I could do what I wanted to doall day, I would lock myself in a dark room and I would be tapping away in t ablack screen with nothing but code on it. Writing something that only otherprogrammers would ever see because that's the type of stuff I like towrite Um- and these are the things that I think are interesting solving thehard problems, but even within what we've been doing for our own company.You know we talk about all these things and they're so abstract. We feel that a lot of in a lot of users, a lot ofthe people who ultimately will benefit the most from this- don't really get it.They don't see it and Ifif they don't see it. Then it's going to be reallyhard to convince people that this isn't just some scam mechanism. For you knowall of this bad press. You hear about it's literally a piece of technologythat an infrastructure level can change the way that pieces of society and theInternet and a lot of other things behave and is awesome and exciting. Butit's kind of like Um. If you were to describe electricity to someone. Okay, that'sreally cool, but now you put a light bulb in front of them at a time whenthere's only candles around that get it, and so I think that there's a there's abalance here. We have to build things that are incredibly useful, but if weactually want to see adoption and success of this stuff, we're going tohave to figure out a way to get it into the inhand of users, because users arethe ones who are going to effectively pay for the services were building thatallow us to continue to develop the next wave of cool things. So it's it'salways a balance. Um and I don't know the it's hard to strike that balance. But H we try to. We try to at least put somethings in the public domain that are easier to play with, and I know that a lot of other mainprojects are trying to do the same its. But it's it's a diversion of resourcesthat, on my honest opinion, at the same time, I wish I could be spending itjust developing the primary codebase, so Yh, so something I ask o pretty much.Everybody that comes on the show at this plane is a what you Kn W. are youyou guys are building what is...

...essentially to me a kind of a scaling solution for blockchain innocence Um, it's also a framework for apt development, but Ifeel like at its core. It's also a scaling solution, Um, so Um. When we talk about blotcingscaleability, it's often kind of there's two major camps of. Is it goingto be like an Internet of blockchains where we have all these differentblochin different protocols they're all like this mishmash of communicationbetween each other and they can all communicate in some manner through somemechanism and pass value around or is it could be this one base layer, block,Chan and kind of rule them all and be the central source of value andeverything kind of communicates with that? So are you more of an Internet ofblock chains? Are you guys, internet or blockchainsfolks, or are you kind oflike this central Sourte of Truth Fok? I it commontorial problem? U I mean but agree what o say I this sounds like this sounds like a more general issueof like well. Both scenarios are kind of bad. I mean like. If you only have one giantBlacchain, then there's no pressure to imp improve and everything is built ona single sumption set, but if it's all, chaos and e're all ran around like Ihave difficulty imagining. I either scenariowou be like the best casescenario Um. I I think that blockcins are a technology stack and technology. Stacks need to have adecent amount of agreement, but they also need to be able to change nothing.If everything's built on the same technology, Snat tack change doesn'tcome easily like. I guess that Lighthunderang everything's a balance Ho that there's only one point ofchange. You just have to change the central system and, and then everythingpropagates. So if we're talking about the central data or the central blockchain, as basically being like the one that stitches them together, not likeit's a universe of watching that there are no others. It's, moreover, thatthere's m a microcosm of subchains and then you're using a singular interfacefrom a Moralasmo Styfrom, a programatic standpoint Um. This is way easier,because what I was saying commonotorial problem earlier, if you, if you thinkabout having all of these different chains, try to talk to each other as aprogrammer. I have to do a lot of work, but if I create a universal languagethat everyone can talk in and then I only have to translate from eachindividual language into some universal thing, then I get a lot of really coolbenefits. This is why you see languages that compile into subrepresentations ofthe code and then into the final assembly language. Out of that, it'sjust it's easier. If you have a universal translator in the Middle Yeah, I'm inclined to agree at thispoint. I think I think most people kind of especially since the PLASO wite 'vedefinitely taken more note to the idea of maybe it's possible to have more ofa central source of truth Um. But then again I actually see the benefit ofbeing able to create your own protocol in a free way that might completely bokthe way that other that the Sucha sorce of truth operates on a fundamentallevel and but then wouldn't that be a bettersensor, central source of truth, abetter Er main net for the rest of theworld. So I don't know M. I'm kin think how do we fla mo ore, always game daeticand market driven we'llll,at least to some extent market people. Competition is good by Universaly. Yeahbidiversity is very good Um if you have a winner, but you can stillchallenge that winter. That's good, yeah, absolutely so Um! Iguess my answer is built a really strong, a acabone framework. Thatis youhot plug modular components. Maybe...

...then it makes a lot of sense. I think,but you en there's, there's a trade off here N, an these kinds of things andthat's specificity. Like basically, what you said earlieris you need different assumption sets and by making the baselayer. If youhave this sentral source of truth, it has to be agnostic in every single way.Otherwise, you can find everything built on top of it to abide by theassumption set that that thing is and if it makes certain decisions at thatlayer, everything else is beholden to it. So you have the same situation thatwe've created with the Internet of you, make applications that work the way theInternet works, which ends up with the applications that centralizeinformation poved maxes honeyposn. So you have social implications of theassumption, ses of the baselayer and when you allow for people to buildthings based on different assumption sets based on what they want to do withthe. At the end of the day, we're all humans is trying to talk to each otherot through various means of assumption relationships. You need to build P, beable to build the technology that focuses on optimizing, thatrelationship versus folding the relationship into the Technology Yeh. So that's definitely isolation ofcomponents. I absolutely agree nd there, but there's another set of trade offand another counterargument, even here, which is m. If you look at things likehardware design, going back to the probably the eighties, I'm honestlyterrible with dates, but we look at things like Spi you', familiar withcerial privral intervase t', like a communication protocol on Sylicon Ri y.If you look, there was no standard about what this communication protocolshould be when it was created, but it was implemented differently by all ofthese different ship manufacturers. And so now, if you go back- and you want tosay interface, two pieces of syllagon silicon together, it sometimes takes a substantial amountof work to figure out how to make the two set of assumptions play with eachother, because they both implemented t e slightly different variant of theexact same thing, and so this is. This is really the BALANCIS. I agree if youcan, if you could construct a Rhodocol that was highly generalizable andallowed for m clean interfaces that were independent of the underlayinglogic. I think that that would be the ideal circumstance, but it's figuringout an interface, that's independent of the logic or doesn't bake anyassumptions really into it. That still lets them all talk and play nicelywould be the that'd, be the cool thing 'cause. Then you can talk to everybody,but you don't have to do the same thing as everybody else. I would arol likeall you need is the most basic steaking mechanism possible n. Then anysubchanes can stake into that. I'd argue that hyperleger said they didthat that was their whole goal was to create that base Layr, that everythingcould work on top of, but we gotta all know how that worked out. Yeah, that's everything in its ideal world right, itwould it'll always behave ideally, so I don't know Um not going to say that it's easy S, at'spart of t. What I meant to say is that that making something that is agnosticto everything that is completely generalizable is really hard, becausewe all want to do a lot of different things that work in different ways andmaking something. That's you know trustless and fair and scalable, and soon and so forth. All at the same time it's a hard problem. No, it really is. I mean you're you'redescribing o R. I guess we're describing like we want something.That's touring complete, so we can generalize it. You know it's. The problem is we giveeveryone turn completeness, and now they do a bunch of other stuff, and nowwe have to deal with everyone else's technical debt yeah. The irony of the circumstance right, Ithink, that's that's kind of a great way H to wrap this up. Is there? Isthere any questions that we should have...

...asked you that we didn't get around to Oh man Um? What is the meaning of life?The universe- and you know every forty two igtbetter better thing to ask is:What's he what's the question, what does that meank Qu? What'sthequestns iprovided, thequesion nd y Ave, the answer wewhats yeah, what's Yeh Doyou think how can how can peopleget Ahold of you? Where can I find out more? What can we expect for new? Wheredo we go to learn stuff? You can find this at Mir: blockchaindot solutions, that's Mi Mir, lock chainyou ever rel Ho on that is untilyou go to spell it out. Raman Mre, Waing, abot solution, so Um websites there are gethubs there whitepapers that describe what we're doing in a technical manner. There Um we'rebuilding out some very technical documents regarding the economics thatwe're discussing today, those are discussed ligtly inside of the WhitePaper and Um we're going to eventually start digging it on the fully yellowpaper. That's the full enabling document, but there's a decent amountof Alficode base available. I promise I'll be commenting more things soon, so says. Every developer ever youonll need an intern to do that. BigGo well thanks. focome other show we love to having you to the listeners whohave been here. If you have it yet on, I ton subscribe, you can find usthrough spot ofive, any pocasting AP, probably if it doesn't exist. Treeat USo figure well fix that and H Jeck is te. Show Yeah Theguy you a great thing.

In-Stream Audio Search

NEW

Search across all episodes within this podcast

Episodes (108)