BUILD WHATEVER WHEREVER with Omer Mishael of Lava Network
29 Jan 2024 · 1:05:02
The Interop host Sebastien Couture talks with Omer Mishael of Lava Network about building a modular, peer-to-peer data network for blockchain access. They cover how Lava's RPC and API marketplace matches data providers like indexers and relayers with dapps, the clustering and incentive mechanisms that keep the network reliable, and Lava's path from testnet toward a 2024 mainnet launch.
Speakers
Topics
Transcript
welcome to the interrupt today my guest is Omar mishael he's Chief Architect at lava Network lava is a modular Data Network for scalable access to ethereum Cosmos and rollups in today's conversation we'll discuss the market of blockchain data RPC API and relayer providers and how lava is creating the Uber for blockchain data we'll discuss lava's ranking and matching engine and how that works the different participants in the lava Network and how there are held accountable for providing reliable and accurate data and where lava fits in the modular stack before we get started make sure to subscribe to get notified when new episodes drop every week and remember that none of
what we discuss here on the interrup is investment advice and if you enjoyed this content please consider sticking with us we're validating on OS Quicksilver osmosis and Juno just look for interrupt in the active set my guest om Melle is coming up next right here on the interrupt [Music] I'm here with Omar from lava hey Omar how's it going hi hi Sebastian good to be here yeah it's good to get you on um we've covered lava on the podcast before it was a couple months ago I had Yer on
the podcast and we talked about the lava vision and the problems that lava is solving but now as the product is getting closer to main net and there's been a couple of announcements over the last couple of weeks and like some new content coming out around lava I thought it'd be a good time to get you guys back on and take the conversation from a different angle uh because uh I think with you we might might go a little bit more technical a little bit more in the weeds here about um about the product but also the different types of problems that it's Sol that it's solving for developers and just blockchains in general um but first yeah a little bit of background about yourself um how did you become Chief Architect at lava um hi guys so I'm I'm excited to be here and
thank you Sebastian for having me uh those are indeed exciting times for uh lava blockchain with the main nearing q1 um we're progressing well with our uh plans and it's going to be released really soon uh also we're coming up with some very nice announcements so uh please uh stay tuned for the lava phase three uh that's going to introduce magma our point system um so um since those are exciting times um I'm here to help clear up H what is lava and uh what we're doing I am Omer I'm a father of one and soon to um I relocated uh thing thank you um I relocated to
Israel to start uh together with the Gillan are the co-founders uh the company and I've been building lava since its Inception um I'm a security researcher I have intensive background in Communications and Hardware development and mobile research and I've been all over the place I like to be versatile and when Gil and yer introduced me to blockchain uh it was uh two months after my first born um and I had to struggle between not reading too much and not feeding too much bows um I got hooked on Cosmos ecosystem it looked so promising the modularity of it it was the you know
introduction of ZK proof the probalistic improvements of it um and those were very exciting times for crypto back in 20221 um and uh being introduced to it I read about the problems of RPC and Moxy blog post that is a very respected OG in the space and um stuff didn't add up uh on RPC and the amount of projects that were aiming to solve that are so few and I didn't understand how difficult that problem is when I got into the solving it together with you know the
co-founders and I'm so happy I didn't understand it because I had so many pleasant surprises along the way and so much Innovation um that I personally love um together with the amazing team of the guys at lava we have been uh you know crunching them one after the other um deciding on tradeoffs that haven't been done in this space and um now that we feel that the product is in a great shape uh and can move on to the next step we are on test net for the last year and a half um and we are already have production uh customers on it so our test net going Manet is kind of a weird thing because we're already
incentivizing you know chains with you know IPC we're going to talk about that a bit later um so that transition is going to be a great milestone for us I'm really excited for it yeah it's interesting you guys have been in in test net in production for some time because uh teams have been and chains have been using lava even though it's a testnet so you know smaller validator said and like a handful of people sort of running the chain but the product works I mean you guys have had uh you know a couple dozen chains uh live there in in production for for for some time now um yeah we'll talk about the the main net uh when main net a little in a little bit but maybe it's uh helpful
here to go back and just refresh everyone's memory about um what is lava and what problem it's solving for for blockchains but also like developers that are building applications on blockchains rollups Etc great I'd love to go into detail um so you know with the modular narrative and the very great increase of um separate stacks and solutions and new chains popping up um the need to address developers as a reason and lava traditionally was focused on you know the centralizing RPC understanding the the the pain points of
the back then ecosystem but the ecosystem has evolved and by looking at the ecosystem and seeing the focus it's been on monolithic chains as well they have been focused on execution you know gas prices and their cost and you know permissionless uh allowing state rights but uh making sure they're not wasteful but the focus on the developers needing to interact with the block chain and getting them to the mainstream has been always lacking and lagging behind it's been there uh you know you have great uh centralized providers that have filled that Gap um and have been helping developers uh on board and you have a lot of new Solutions popping up but the
problem in the stack today is fragmentation uh so lava aims to be the fourth layer of the modular stack and be the data access layer and help those Developers that want to build tools to get to the end user uh interact a lot of ecosystems are focusing on improving the existing infrastructure more transaction per second and less checks and less test your own uh capabilities and those are great technological solutions but somebody needs to help developers access that growing space if you have 50 great modular chains you're going to need 50 ways to access them and if it's fragmented and you have different services for each
whether it's RPC and you know the Evolve evolvement of that by solvers and sequencers um and oracles and all of that if the barriers to move between them is high then developers would need to choose and the beauty of that modular narrative is that developers don't need to choose they can build whatever wherever and then by doing that lava tries to help them do exactly that it tries to give them a place that they can access whatever they need that's flexible enough and how do you do that you're doing it in a permissionless way in an open- Source way that anybody can access so lava is a blockchain that
allows anybody to join and set up um modular uh Lego block that we call a spec and after you add it uh via a governance proposal any consumer can consume it and any provider can provide it uh and since it's permissionless and any can edit uh it allows you to expand greatly and uh communication is done off chain entirely uh via peer-to-peer network uh so lava acts kind of like a facilitator of that communication but is not a middl m to it so lava always you know you go to Lava you add your service via spec you register your provider and consumers can um get their uh
subscription on chain and then they directly communicate with you and as a provider of uh information of Services of data whether it's RPC or um evolves evolvements of that um you can uh move that uh settlement onchain and get your uh reward so lava is kind of like an interaction between offchain and onchain Communications and the settlement of that offchain communication together with guarantees and accountability so we have been building that uh in order to help uh developers uh on board and get you know quality services and not needing to do market research on how I'm going to access ethereum how I'm going
to access Cosmos Hab how I'm going to access Celestia um because uh they're going to have a bunch of uh high quality providers uh highly available great the way I like to describe lava is Uber for blockchain data it's to me it it's really creating a Marketplace for data providers all sorts of data providers and also services that work adjacent to blockchains like um like rpcs and Rel layers and all this really critical infrastructure that blockchains need in order to to function that that users need in order to be able to send transactions uh to relay transactions across Bridges all these things that we
do on a regular basis relies on uh on third parties and and lava is sort of solving the problem there that this this uh ecosystem of third parties that provide these Services is is highly centralized or at least the relationships are the the commercial relationships between either the applications and those service providers or the users in those service providers is highly uh fragmented and sometimes centralized and so what lava does in my view is it it it really decouples uh the relationship from the uh from service and and creates a marketplace where anybody any developer any um any user in the end can have access to the best service provider that
they need at a specific time in a specific geography um I wonder if that's like that's a good way to sort of summarize the product it is a great way to do it and I love how you describe it as Uber because a lot of service providers they already have their service and they need more approachability to uh data consumers to Applications um and you know a lot of Builders they're not even bothering to build because they're not going to be as good and as big as other providers and then they're missing out on selling their uh services so for example if I developed a great um trading uh platform back end that gives great statistics and I don't mind selling it I would love to sell it
but there's no platform to for me to offer that as a service and then um the developers that already make very great products of analysis and data ingestion and indexing and and and security modules even in the future based on AI and protection uh how are they going to get to the developers because developers don't have the time to find all the Solutions in all the ecosystems uh learn what's good what's not good what's how to interact with it um and even you know for RPC remote procedure calls that you have in a node even they differ greatly you could you could have uh settings in the nodes in the service providers in
how they're serving it and then transitioning for adapt that's already using one provider could be hurt hurting a production environment and then they're kind of have to uh develop their own code in order to do liveness checks and and transition and have fallbacks and a lot of those stuff lava is building to solve and we already solved so many of these problems this is why you know our users are using glass on testnet so before we get into the nitty-gritty and the the ranking mechanism and all that really interesting stuff um I I'd like to maybe just put a pin in the like rpcs and Rel layers and what are their roles uh when
using an app chain or using any blockchain application and um and how how it how is that currently work right so like if you're using osmosis for example you're going to be using some RPC you're going to be using also like relay uh where where are these rpcs and reers coming from and who's um who's providing them and like what is your relationship to them uh you so maybe just sort of like unpacking that so that people understand um essentially like the the the the types of uh of network particip that they're interacting with Without Really sort of knowing it yeah
yeah so let's go into into detail how most decentralized application work and we can also go into detail how some Enterprise grade Services work so let's say you're going on Unis swap in your browser so Unis swap has their own uh account with an RPC provider RPC being remote procedure call it's basically anything that you send to another server to run for you and give you the response so traditionally in the crypto space uh RPC refers to Raw uh functions being implemented in a basic node function but RPC could also be indexing services because you trigger a function with
arguments on the other side and it gives you a response for it after executing code but I'll refer to mostly I'll refer RPC to the raw RPC that you get on a note so let's say the web page of uh Unis swap that R in your browser it needs access for example to the exchange rate of usdc so in order to do that they need to fetch information from the blockchain so Unis swap have their contract with I think it's infura currently and they're uh fetching that information from an infura endpoint probably geolocated uh with many load balanced nodes running behind the scene and then INF returns that response to your web page that response is is then
presented it could be followed by many more RPC calls to verify you know the block doesn't change or uh verify some stuff about the RPC node itself it could get proofs and run some uh verifications like uh light clients do when they want to check for themselves um and then uh for example you connect your wallet and then you go to your metamask and you want to exchange so metamask has their own RPC endpoint you know usually they're using using um what they uh uh settled for and then uh that centralized endpoint gets the transaction the transaction gets sent to usually a different RPC provider unless you configure it manually your own wallet
and then uh that uh uh RPC provider gets the transaction processes it adds it to his mle and propagates it in the network until it reaches a validator that means a block so this usually the flow of most uh apps if you have you know several uh complex web pages so every web page you open up it runs a bunch of RPC calls to the provider and just maybe just to to to stop you there um the the reason why this exists is because no one's running their own notes I mean very few people run their own nodes with which they can interact you know I think that I think in the early days of of of crypto you know like 10 years ago you know like a lot of people were running their own
Bitcoin nodes and and or at least like people I knew were running your own Bitcoin nodes and when they would uh propagate a transaction they would send that transaction to their own node their node was connected to the network and like all good um and then also with ethereum you know it was like triv pretty trivial to like run an ethereum node now it's so much more complex and there's like so many more moving parts to this that it it's a lot more complex to run your own node unless you're you've got like a Dap note at home or something which is like a $2,000 investment um and so that's why like we need to you use someone else's like you're using the blockchain cloud essentially you're using someone else's computer to issue that trans to to submit that transaction or fetch that data from the chain um
because specialization is sort of generally what happens when things get more complex yes and also uh blockchains you know when time moves forward getting historical information is not something you can store on your phone and even if you wanted to run your own node you need uh infrastructure so you would lose on accessibility you wouldn't be able to access that from the browser and with the modular stack and more you know execution layers coming in and each execution layer has its own rules on how to process that information you would need so many nodes running to do a multi- uh chain or a modular dab that wants to interact with many chains that
once and it's going there because the more uh chains you're going to have the more flexib ibility and then you're going to have more projects you know fetching something from uh Solana and uh getting thata availability from Celestia and reading the settlement from ethereum so with all of those accesses it makes no sense that you would need to run uh a node or even a light line for each of them it wouldn't fit any application especially if you just you know log log into your phone you open up the web page and it needs to be fast it needs to be uh compatible with the EXP experience you are expecting on a web 2 API otherwise you wouldn't move to web 3 and I am a true believer that the success of
blockchain is not you know only moving forward with tech it's by increasing mainstream adoption and the tech is very good as it is but we need to make it easier to use you know more uh social wallets and easier access and more visibility and more protection so not only the tech savvy our grandmas should use it right and when our grandmas could use it then we can take it to the extreme but um currently it's not like this in all of the textt and RPC was a solution to that problem that uh you needed that access fast and RPC is very web to like solution until you add on top of it some elements of crypto that
we have developed um and then um people would look at it traditionally as a settling down for RPC um but I believe RPC is here for stay in the long term because RPC means a service someone runs for you meaning it's a cloud service like taking a a Docker in AWS and it runs something for you doesn't mean you have to trust it entirely to do it but you don't want to run it locally when something you know you want to check it for yourself you don't run it locally you add Watch Dogs on it and ways to verify it and you know you have uh Alternatives running it for you so you can cross reference and those are the motives we have taken into lava
uh adding statistical checks because you don't need to check every relay in order to be M to know that uh you're secure unless you want to and and that's the flexibility we have developed because we don't know what developers are going to need because their needs are adapting so the flexibility in our solution allows that yeah the way I I sometimes talk about this is that like we have this very decentralized blockchain and then you have users that are interacting with those blockchains through essentially like uh someone else's computer and and that like it it we we've scaled that so that it doesn't create like bottlenecks but the the risk here is that um the the risk is that the access
to the blockchain could be compromised if you compromise that um that that entity that service provider could be compromised from um like purely sort of legal perspective so they could be like subpoena to uh to turn off their servers or or censor transactions it could be compromised from a regulatory perspective as well where uh those nodes operating in certain jurisdictions would be a course to to censor certain types of transactions or certain addresses or things like that and so like by creating an Open Marketplace I don't think that it fully solves that problem I me like regulatory capture is going to like come on the like regulatory capture is going to
happen to the industry but at least I think it delays it and it it creates a counter pressure to um you know overzealous Regulators that might want to uh regulate basically RPC providers or like uh entities that provide this sort of interaction between a user and a blockchain if the marketplace that um that makes that relationship possible is it self decentralized then it's like an extra step in a more complex um a more complex problem to deal with from from a regular perspective um let's let's um talk about the the technology here so as a as a user you you're interacting with metamask or some some wallet right and
so typically here like metamask would have that existing relationship with say like infura or Alchemy or some RPC like data provider API provider um let's let's flip that on on its head and describe now like what that would look like in a lava Paradigm where you're Now using lava to uh choose your RPC provider uh your relayer or even your indexer uh in in a sort of like you know Ideal World where lava is deployed on all these apps okay amazing so on lava's Paradigm for any service you're going to have a big array of providers competing
for the service to provide the best service because incentives are aligned on the blava blockchain to the quality of service and the amount of work done so when a user wants to use lava he has several ways to use it because we have offered several implementations of our client the first would be uh to go to our Gateway and our Gateway is running our open source server kit behind the scenes um with you know additional capabilities but we've built it so people can transition uh securely to interacting with a lot of uh decentralized providers without you know changing their stack because we
understand existing Solutions don't want to open up their codebase in order to accept a new solution so lava H created the gateway to make it uh easy to transition and experience that uh and the Gateway is fully decentralized in the sense that you can run your own so it's a solution it's a service that you're running and that solution helps you participate with the lava provider and lava protocol uh seamlessly now what it does is lava in order to be a data access layer lava needs to be a protocol agnostic so let's say ethereum uses Json RPC and Aptos uses rest and Cosmos SD Cosmos SDK offers
drpc uh lava needs to support all of them and that's you know a guiding line in our Tex stack uh so we need a client running the lava code and the provider running the lava service in order to provide the guarantees and the flexibility and the abstraction so that client is being run on the Gateway that we're offering for free and um consumers of data applications can just send relays like they're used to like it's their own node it would go to the Gateway client the Gateway client would drop it in the instrctions of the lava protocol and since it's synced on the list of providers uh for the Gateway client uh it communicates directly with
providers uh one of the mechanisms I'm uh pretty excited about in the lava client is the selection Optimizer where it uh queries live and holds off uh data H about the providers inter interacted with to select the best provider based on the chosen strategy and we have developed some different strategies like a cost strategy or a privacy strategy or a latency strategy or a freshness strategy each having their own criteria when they're selecting providers because the optimization happens when you have this uh multi-arm beded strategy of reveal and uh extract for the information of providers so what that
module does it saves up the information about the relays about the requested uh the request and the response and the freshness of the data being the cryptographic proofs the providers attached to the responses and then deciding what is the probability that a provider will have a specific response so for example I'm asking for archive data from 100 blocks ago not archive it's like 100 blocks ago so the optimizer wouldn't necessarily pick the fastest provider but rather the one that has the best availability and the best latency so our adaptive selection mechanism implemented the client is available through that Gateway and then the Gateway interacts with the providers
the provider Service uh can work with uh load balancer and many nodes behind it or uh one provider service per node and that provider um uh der wraps the the communication it takes it to a language the node understands being uh Json RPC for example or a websocket subscription and then uh sends it to the node the node processes the request and responds the provider service gets the response attaches the necessary headers for accountability that the provider signs off because every request on lava is cryptographically signed and therefore accountable and sends it back uh this back and forth between the consumer and
the provider happens in something we call sessions and sessions are aggregated in order to minimize the impact on the blockchain when you want to sell because we're building for scale so if every relay created a bigger proof in order to get um rewards on chain uh it wouldn't scale well and we have seen that in other decentralized solution where the amount of relays increases the proofs um so on lava the proofs aren't uh the size isn't increased uh and each relay is aggregated to the same size of proof it's not even you know log off or it's just the same size of proof all the time uh and then the providers can can claim rewards on it uh another solution we offer except for you know the the uh
Enterprise grade uh you know many consumer solution we offer an SDK it's mostly aimed for web pages um because they have the element of popping up needing to sync really fast get their service there you know uh 100 relays present the web page maybe do you know some stuff in the background later to to refresh it but the goal is different than you know having many many users with lot of memory so it would be much more light the SDK is very small in size and we have already integrated with so many libraries web 3 VM wagm ethers and and
whatnot um and it works together uh with those libraries so you don't have to change your code you just need to import the snippet that sets lava as the layer behind this um very flexible Frameworks and you're using them as you're used to so that's something nice that you can add on top when you're developing so that's on the application layer so let's say like you're building a front end like Unis swap say front end you'd integrate the uh lava SDK into your say react application or your web 3js um and uh that kind of uh replaces or will uh will'll do that um that uh match Ing and provide the the right RPC
endpoint or relayer or data provider uh to the user yes and I'm really proud of that Innovation because imagine that every request needs a cryptographic proof but a web page is a compromised environment you couldn't store your private key on a web page because you know somebody could take a console or attach a debugger and read it so how do you provide cryptographic proofs to relays to prove that you're the consumer and then provider needs to get paid for it so you need to make sure it's not abusable so we had an innovation there about a system we call badges where the front end goes to a badge server request for a temporary uh uh badge in order to
use on behalf with a generated on the spot private key and then the badge together with a private key can cryptography sign a certain amount of request so there's no risk of abuse because you know that the badge server protects his master key and then the secondary key of the badge um can be used with the provider the provider can still claim onchain on these relays but it cannot fake that badge because it's signed by the key of the of the of the subscription that created it okay so so so the matching and like all that that that operation happens when exactly and
does is is the matching happening uh this is this is where I'm I've not yet fully understood like the uh the order of things as a user I I I connect to like osmosis I've got my Kepler wallet um the when I go to the website that the website's providing data so the website has um indexers with with whom it works that's providing data to the front end uh potentially like they could have integrated lava and then lava is providing the best indexer for the user but then when it comes to relaying
the transaction and uh finding the best uh RPC endpoint let's say there's like an RPC endpoint like down the road and and it has like all on the other um on the other ranking uh metrics it's also ranking high right so naturally you're going to want to take that one cuz it's Geographic L close and it has uh good liveness Etc is the is is that matching happening directly with the user pinging the lava blockchain and the lava blockchain is sending back um a you know that that data provider or is it the application that's doing that from a backend server um and I guess my
my what I'm trying to understand here is like what is the level of peer-to peeress that is happening and how are you like is lava eliminating the need for the user to interact with a third party server in this case like osmosis or uniswap to do that matching for them do you understand my question yeah yeah I understand clearly and I'm glad you asked it because we have two mechanisms in place the first being a mechanism to take the very big list of providers and narrow it down uh why do we need that we need that in order to do a best mix and match of consumers and providers and if you're not narrowing it down any consumer can interact with many providers at once and they don't know about each other and then you have to limit the rate that the user can do so
it doesn't clog your system with many clients so that pairing mechanism it's happening on chain but it's not something that you need to do often what happens is you have a deterministic function that gets uh set it's a Pudo random function because it's deterministic based on a seed but the seed um depends on the blocks so it's randomized um and then you have this function nobody calculates it why because everybody have the arguments and they can calculate it offline so you can run an RPC to your node nobody else is knows you did it and knows what your address is you run it and you get your list of providers the providers aren't running it yet uh so you do that you run
it locally for that you would need the rule set of the blockchain so you would either need a node for it or you need somebody to run that for you okay and then you get that now our list of providers now how does the SDK execute that in without trusting a third party or a single point of trust so this where our decentralized bootstrap mechanism comes into place it's a solution that's inspired from Sid notes where you have this initial list of you know uh trust why I call it trust because it's not really trust it's like an accountability list so you have a list of providers that are accountable the way you generate it is either you run it once a month you know with your own node you
set it up you run it you uh write it in your back end and then you bootst from there and that list is accountable for a long period of time let's say two months and once a month you refresh it so any provider on that list is accountable and if he uh responds in a fraudulent response that is cryptographically signed like every relay on lava you can report reporting onchain so SDK starts with that list of providers it queries them all at the same time for that initial bootstrap uh and they give you the list of providers from a different chain you need so for example Unis swap needs an ethereum uh list of providers so you would go to that static list of
lava providers for the lava pairing and you get that smaller list of ethereum providers once you have that smaller list of ethereum providers uh we have the second mechanism in place which is the optimizer that probes them live to see what is the best fit for your specific web page because for example Unis swap uses lava and they get you know they get a very big subscription and they get like 24 providers at the same time um your web page would need all 24 at the same time so it would probe the best ones it would pick the closest ones with the highest quality and then you would take those providers and and you would uh use them from your web page so different wallets or
different dabs would use a different set of providers all in the same you know pairing for the Unis swap account and you you know we offer configurability you could set geolocations in the pairing the pairing mechanism I I will go into detail um if if it's uh if it's uh fitting uh how that selection of providers is done on chain but once you have that selection you do the sub selection live based on the service based on the load and based on the latency from that specific um node yeah let's get into it okay so the pairing mechanism is taking several arguments into account the first being the stake
of the provider um understanding that stake gives you uh more trust and then therefore you bring more users to that provider uh also it's a mechanism for providers to fine tune demand so for example you need more demand you increase your stake you increase your incentive for lava ecosystem to work and then uh you're getting more consumers and uh having that stake mechanism in place is not sufficient because providers can have different qualities so for example I could be a provider that's offering archive or offering a specific addent for debug so we have filters in place for uh the specific needs of a consumer so our RPC consumers
the applications they can configure the preference in their subscription object on chain and then affect the pairing accordingly so I could provide uh a configuration for give me a mix of uh debug and archive and regular providers and then the pairing mechanism would create uh what we call slots uh for archive slots for debug and slots for providers and then it would generate a list of eligible providers ERS for that slot um and then eligible providers are going to be weighted uh together with uh onchain quality of service of Excellence that we're saving from replies of consumers from the same uh group uh that's our clustering mechanism maybe I
can go into that uh as well um and then you have the score um calculated based on the stake based on uh geolocation fit um based on that quality of service of EX and those filters to get a weighted choice that is pseudo randomly calculated based on the hash of the block on the consumer address on the provider and then you have that selection repeatedly fitting in providers to the slots to provide uh the best match uh with providers that's um that's a really complex mechanism so how does this clustering work then and like is is do this create more efficiency When selecting the data provider yes um our clustering mechanism basically
counts on the fact that different consumers are going to have different needs so for example if I'm a consumer and I care about latency I could create you know Define the strategy of ranking based on uh latency alone and if I'm a a consumer and I have the balance strategy I would rank providers based on availability and sync and uh latency together um being you know um averaged together and then H every relay from a consumer to a provider because it's wrapped in the lava protocol wrapper uh is going to contain the current quality of service from that consumer to that provider when providers ask for rewards on chain they're actually reporting
themselves and other providers uh from the responses of the consumers and they cannot be tampered with because everything is cryptographically signed by the client themselves so we were thinking of several approaches one being um a f a fisherman but a fisherman is less effective and you actually have to fund it and what could be better than clients reporting live on their own service and we have addressed you know um incentives and G game theoretic uh models in order to make it not profitable to lie so the clustering mechanism is one such mechanism so as a client you're ranking providers and then this rank affects how you're going to get that provider in the future what it
also means that you're going to be clustered by a k means with other clients having the same effect so for example if you are very big Enterprise consumer and you got in your pairing a very small node a very small provider and it cannot you know uh serve the amount of volume that you need you're going to give him a low availability score and then you will get him less often other Enterprise grad consumers would report the same you would be clustered closely together uh in in a cluster and then that cluster affects the way providers are chosen for the cluster so the way we're protecting um our customers is that if an attacker comes and provides false reports if they
are outside the you know the the the standard deviation of the cluster he would move to a different cluster and uh you know there's going to be live feedback from you know the the providers themselves about the quality of the service that consumers saw and that picture of class is going to be uh adapted accordingly now when it comes to the the participants that are making this matching happen um who are the different participants of the lava chain I mean obviously we have the validators like lava is a cosmos chain and there are validators that uh secure the chain participate in governance Etc um but there's other U participants uh can you
describe each participant and what is their role in and making in the Eos fun yeah sure would love that um so the validators are maintaining the security of the chain uh but besides them you have uh two more important roles for the protocol the first being the data providers they are registering onchain to provide data and they're staking their tokens in order to incentivize them to provide honest service and there are the consumers that are purchasing uh subscriptions on chain uh via transaction and getting access to that data um so providers would need to run a service and a node uh for the chain that
they're supporting or the service they're indexing or the AI that they're running and the consumers uh they have the single subscription after it was purchased they can start uh sending relay to all of the providers and the fourth role in the ecosystem are contributors contributors are uh people that can either create create new specifications and add them uh or encourage existing and maintain existing specifications they are participating in a reward uh based on their contribution uh and they're actually the ones that are adding more services so it's like an nft that you meant so the Creator gets you know his share of the reward so if you want to create a new service you set
it up on lava you're going to get your share of rewards as long as it works and it's being used uh and this is how you scale it uh with incentivizing Innovation and and creating services that actually match what developers and applications need right and so we the just to clarify here like the the the consumers are the end users that are interacting with lava uh directly but the those who are paying the service providers on behalf of the consumers are the project so the consumer isn't paying a service provider directly via transaction fee that's abstracted away so that they just have to use they can just use a service um there's probably
like a blockchain or a foundation or or some other s some other uh entity um you know the product that is paying uh lava to uh to facilitate this relationship well long term that's exactly the vision but what we currently see and I'm pretty proud of that collaboration is the ones that are funding that are actually ecosystems so we have several Partnerships that we think are going very well um with near fos and axela and those ecosystems together with our partnership are actually purchasing those subscriptions for the consumers to use and in a project we call IPR RPC incentivized public RPC um the benefits
of that uh approach is that ecosystem that traditionally have to deal with centralized providers and you know doing uh mix and match of several providers or closing a deal as a foundation with those providers um they are didn't know what they're paying for I mean they can get feedback from developers or they run their own testing services but it's actually very hard for them to know if the customers are happy and what they're getting so our very big customers being ecosystems are uh joining us and they're taking their rewards and they're distrib in them back to the community of their providers and we have our faithful
providers you know they're seeing a new initiatives and they're joining their forces and setting up new nodes in the ecosystem in order to provide service for it uh being incentivized in the native token of the ecosystem which is very exciting because you know this is how during testet we could actually make it production ready um and um then the you know where where these ecosystems actually give back to the providers and the providers give back to developers and developers can you know interact and experience and ask for more services everything uh works together much better um ecosystem has have a peace of mind about you know the load and about the the quality of service because it's all
settled on chainel lava blockchain it's public information everybody can see how much the ecosystem cares about developers uh providers can check their profitability and if the ecos system wants to scale up the support for example uh God bless we're going to have a bull run soon and suddenly uh near are going to you know launch their data availability service and it goes well and everybody want to scale up using near how they're going to scale up so now they have to go and negotiate with their centralized provider uh and the centralized provider you know would struggle to ramp up their service because it's temporary uh the the easy alternative that is offered via IPC uh
and I think it's what attracts them is that they can increase the rewards uh regular Joe's can set up nodes uh being a having lower barriers of Entry to provide high quality service because the services we provide already have a lot of tech that regular people aren't able to uh deploy so it was mostly saved for VC back centralized companies and we took the the that that time to develop during the be market and we provided these tools to the community uh and we have some very nice Innovations in terms of performance that make it uh for that anybody that deploys a node uh can join
and provide service high quality service with that uh and our docs help them improve over time and the feedback from the system is going to help them improve over time and while they're at it they're not disturbing users because you know uh we just speak the best ones uh and they're incentivized to do it so it's a very nice uh ecosystem of uh symbiot symbiosis I think there's one thing that um that there's one um benefit that is maybe not obvious from using that from using lava is that applications using lava get all of their data in one place they get all of their data providers in one place so if you're if you're an
application that uh interacts with many different chains um say in your front end or you have like relays that send messages uh to and from different chains using lava across your entire stack just allows you to get access to everything because lava already integrates with like more than 30 chains uh I I keep losing track of count because you're adding new ones all the time but um but yeah basically it's like you get a One-Stop shop for for all of your data needs um and not have to have like relationships with different data providers Etc and like different types of data providers exactly and also on top of it you can own what is offered on lava
having the specs being a modular stack and anybody can add a spec let's say as a developer you need something that's not supported on lava um then you can set it up as a proposal um you can discuss in the community to see you know the the providers and there after it's passed and introduced on lava permissionless um it start being served immediately and you don't need to change your text tack uh you can set up one SDK instance on typescript web page and you get access to all the sites at once and if you look at the networking you're going to see your pinging near providers and ethereum providers and lava providers and uh bar chain providers and
it's all existing in the same SDK so the flexibility of building multi-chain is amazing and you know the widgets that you can build on top of it to have pre-made frontend libraries is going to be amazing and within the vision of lava uh people wanted to go multi-chain will have it very conveniently in their single onchain subscription uh currently everything is for free uh and while ecosystems keep you know IPR PC live it's going stay that way for those ecosystems uh unless you're you know scaling very well which is good news for applications and then you need more um and then uh this uh tool is aiming to help you access the increasing modular
stack and without this tool you would have so much fragmentation and then developers would have to choose where they're building and what they're building on uh which is something that is going to prevent web 3 from scaling cool so I'd like to maybe take a step back here a little bit and um talk about the modular stack and uh like so far I think we've been talking about lava in the context of the you know monolithic chain and app chain Paradigm at least that's how I've been framing it in my mind um now as uh the ecosystem moves to a two rollup
model and we have thousands of applications leveraging underlying security underlying data layers uh data availability layers um how will lava help support the growth of the ecosystem looking at the three existing modular Stacks you could see that the access for developers is kind of missing from the Paradigm and lava aims to be that fourth layer of developer a access and how we do that is we're going to aim to fix fragmentation so let's say we have Eclipse building an svm machine on top of a Celestia data availability layer and ethereum uh settlement and
then suddenly how do developers access that so do they need to now ask some centralized provider uh to to support it and then having you know up and cominging ecosystems they need a way to convince uh um that it's worth it that it's financial and waiting for them to add it or even worse let's say I mention you know uh having 10,000 up chains uh popping up it would be so easy to set up an up chain but if it's very difficult to develop on it because the rule set of the app chain is not readily available for applications to process then that could actually be the ball neck for
scaling up and with a future with a paradigm where lava simplifies that lava supports these app chains very quickly and easily the modular specs the beauty of it is that they can inherit existing Solutions so let's say you created uh an svm you don't need to create a new spec you just say hey this is an svm let me inherit from an svm spec Define the new verifications that you need for your own solution being it for for example a different chain ID even it could be the only difference uh in terms of you know data access uh and then providers can uh serve it so the thing is specs are so
flexible in the way that what you can bring into your existing solution without having a lot of work that uh it scales very well with new chains so for example bar chain had their test net very successful initially and they had RPC problems uh and Gil our CTO told me hey can we support be chain and immediately and it took me 1 hour to deploy it on our test net and it took me longer you know to get people that have the binary to actually join it so the lava stack actually supported super fast and that's how easy it is to add existing Solutions uh and lava was built to support all of those Solutions
supporting so many different API interfaces being a grpc rest URI tender mean Json RPC websocket you name it graphql queries um all of those are abstracted by our clients meaning that you can you know just patch in your API set you define you know the the rule set of the apis stuff like the compute units that you're offering for each API so settlement is fair in terms of uh compensation and incentives to the load that you're performing um and then that's it you're ready to go you attract your uh providers if you have a faithful community that are already running it so they can access immediately developers if you want to do an IPC Endeavor or you
want you know developers are profitable enough to pay for it um they have the flexibility to do so so if if we have like clients let's say in a future where you know you're you're interacting uh with a chain or with an application via a light client on your phone or light clients are integrated in browsers and you only interact with the chain directly or mostly directly you know let's let's think big here um does yeah what's the what's the role of lava then in that case yeah I would love to answer that because it's uh something that you have to really think about in order to process light clients are an amazing solution for a certain set of
requirements um they can help you verify yourself which is amazing it is amazing if you don't have to go lightweight and even with super lightweight light clients you still need in order to verify that that you're doing more processing so light clients are lighter than regular nodes but they're not lighter than somebody else processing for you uh and when those queries are super heavy or computational is complex light client cannot replace that what it can do is it can delegate it so a lot of flight clients are actually RPC what they're doing is they're asking a node to run you know to give them a proof and the data because they don't have it right they can verify but they're not
tracking the chain and doing calculations so actually life clients are actually RPC clients they're asking the chain now why do people treat life clients differently than RPC because L clients usually do it on the peer-to-peer Network so usually when you have an RPC you have a dedicated node for RPC and the peer-to-peer Network that you're running with regular nodes and you do not differentiate usually on the peer-to-peer light clients and regular nodes that you need in order to sync on the network um but in a future where you have so many light clients the load of computation is going to fall on nodes so these nodes are going to either altruistically or with a service service
those thousands of flight clients quaring give me the balance and give me a proof for it and give me an e call uh contract or give me a specific accounts permissions and then the nodes need to supply that and if they're not supplying that there's no answer for the light line so in a future where lava exists actually lava facilitates the communication of light clients and their dedicated note so imagine you could get a subpar experience of flight clients via the peer-to-peer network but you could actually use lava with incentivized nodes to provide you that information quickly and with high High scale and guarantees so you could
actually make your light clients work faster by joining lava Network so light clients and lava aren't competing lava aims to create light clients environment where it's monetized correctly and incentivized correctly in order to support it and then an ecosystem could say hey I really believe in light clients and I want it I want 100,000 light clients and only five nodes and I want these nodes to scale really well and provide that service yeah go ahead you do an IPC Endeavor for light client support and light clients can connect through Lava and those nodes are monetized and I saw that uh Nick white talked about the problem of increasing
the amount of light nodes having it not monetized so lava actually uses collateral and onchain feedback and accountability to attach incentives to providing Services that's what we are so good at we are are good at people permissionless coming serving information having guarantees on that information and repercussions because you know if you're signing off on a wrong response everybody can see it and we have an onchain resolution mechanism that can get you jailed or slashed um and then that mechanism guarantees your integrity because depending on the client some clients would configure
their clients only to wait for a consensus of a lot of uh relays but a statistical client that says hey most of the time I'm happy with statistically checking which is what most checks are nowadays that's the standard for crypto because you don't want to check everything that's redundant um and then uh those checks are catching fraudulent providers so providers are incentivized to behave honestly they have their their stake in place um and then they can um you can actually monetize providing service whether it's for a web page for a light client or for a Enterprise grade company that requires uh median of our PC
calls so as we wrap up here I wanted to maybe talk a little bit more about the yeah the road map um currently the product is in test net so people people can actually go to Lava uh network. XYZ and start using lava integrated in their in their application it's still in test net but you can use it in production um but yeah what's the road to main net and um when airdrop if any I I always ask that question all even though people can usually not answer but I like to ask it anyway at least I've done my at least I've done my D I'm not wearing the foundation hat so I cannot reply to that but we're we will announce a foundation
really soon uh we're on track for launching q1 mayet uh this year 202 before um we have progressed greatly with IPR PC Endeavors and we have uh increased demand for it we have some very exciting announcement regarding IPR PC uh with some uh stuff that uh are coming for sure uh yet haven't been announced and uh the road map for the close uh period is focusing on Manet and focusing scalability and the Deliverance of the great product we have been building uh dur ing you know uh increased demand that we are expecting in the next year uh and besides that we're scaling up our uh data access
services having some great Partnerships uh such as Subs squid uh for indexing services uh and uh we have been in talks with some centralized providers joining in uh providing their services uh I cannot name them until they want to uh officially go live but they will be um providing their services um on lava as well so lava is going to uh moving forward it's going to in the close year is going to expand and add more services and in the long term uh I Envision lava um helping sequencers uh offer their services in a decentralized manner and you could have solvers providing intent Services uh and decentralized Oracle so
the future for providing any API in a in a Centric place for aggregation permissionless accessible with a very uh varying Tech stack I think it's going to be the way for developers to build that would be the goal place for a developer that wants to build on blockchain to go to because it's going to be well documented with a lively community that is dedicated to making developers lives easier and service providers are going to come and offer their services there first because they can can focus on Tech instead of hype and they would be chosen because their quality of service is better or they were giving the
flexibility of the service to their consumers rather than uh having a brand or a specific stuff that are missing where the other stuff are subpar but the users are locked in because they need that excellent well Omar thanks so much for coming on and uh spending time with me dissecting lava and getting the understand all the all the technical aspects here CU I think that's one of the most interesting things about lava is just like how uh technically complex it is but but also um what a what a great product it is for developers to get better access to data and I think uh unfragment this uh this data offering that we have in crypto that I think is a
big problem for um for developers to build great applications that people want to use so thanks again thank you very much for having me and uh you know uh taking the time to explore the complexity of uh solving that problem in web 3 thank you