Episode 323 - The Role of Reth with Georgios

9 May 2024 · 1:22:48

Zero Knowledge hosts Anna Rose and Tarun Chitra talk with Georgios Konstantopoulos, CTO of Paradigm, about his work on Reth, Paradigm's Rust based Ethereum execution client, and its evolution from his earlier work on Foundry. The conversation covers what differentiates Reth's design, the Ethereum client landscape from the ETH 2.0 research days to today, and why client diversity matters for protecting the network.

Speakers

Topics

Transcript

[Music] welcome to zero knowledge I'm your host Anna Rose in this podcast we will be exploring the latest in zero knowledge research and the decentralized web as well as new paradigms that promise to change the way we interact and transact online this week tun and I catch up with an old friend of the Pod Georgios CTO at Paradigm Georgios updates us on what he's been up to over the last few years since he was last on the show how Foundry the topic of his last episode has evolved and how this and other work

has led to W an ethereum client that Paradigm has built and funded in this episode we cover the general client node landscape going back to the eth 2.0 research days back in 2018 2019 and the different client teams then to today we talk about the different clients and how a diversity of clients can protect a chain we then dive deeper into the details of WTH what makes it different what inspires its design where it's going and what it eventually wants to become we go on quite a few tangents and cover quite a lot of ground in this episode so I hope you enjoy now before we kick off I just want to highlight the ZK jobs board for you there you can find jobs from Top teams working in ZK so if you're looking for your next opportunity

and want to jump in be sure to check it out and if you're a team looking to find great talent be sure to add your job to the jobs board today I've added the link to the ZK jobs board in the show notes now Tanya will share a little bit about this week's sponsors attention ZK developers 01 Labs is excited to announce the V1 release of 0js the fastest way to build ZK apps and deploy to the Mina blockchain after 2 years and 70,000 downloads 0js V1 is the Enterprise grade typescript ZK DSL the community has been waiting for the fastest most scalable most stable version of 0js to date is packed with features use ecdsa signature verification to add privacy and scalability to existing ethereum

applications Implement Foreign Fields to connect your ZK apps to the outside world of cryptography and pass a wide range of external data as private inputs with a growing list of hashing algorithms including sha 256 and katak or build your own using efficient bitwise operators are you ready to build the next killer ZK app visit 01 js. org and get started today so thanks again o1 Labs Alo is a new layer one blockchain that achieves the programmability of ethereum the privacy of zcash and the scalability of a rollup driven by a mission for a truly secure internet Alo has interwoven zero knowledge proofs into every facet of their stack

resulting in a vertically integrated layer one blockchain that's unparalleled in its approach Alo is ZK by Design dive into their programming language Leo and see what permissionless development looks like offering boundless opportunities for developers and innovators to build ZK apps this is an invitation to be part of a transformational ZK Journey dive deeper and discover more about Alo at al.org and now here's our [Music] episode so today tun and I are here with Georgio a longtime friend of the show and as I recently learned he was one of the hundred or so people who attended ZK Summit 1 Georgios is also the CTO at Paradigm welcome back to the show

Georgios Anna hey Dar thank you guys for having me it's great to be back and also it's interesting to reflect back on our times from the liziki summit days and how far we've come since then yeah and tun is our co-host for this one hi tun hey excited to be back so yeah Georgio I think a catchup is very much in order um last time you were on I think was like 2 years ago or so and we discussed Foundry that was the topic of the episode but since then I know a lot has happened and I think actually a cool starting point would be like what have you been up to but also tell us a little bit about what the Paradigm stack looks like today so the last uh when we last spoke on Foundry that was 2 years ago it

was a different time it was the beginning of our open source tooling Saga where our general take was that okay we've been doing research with a portfolio for years we fished with a portfolio we worked with them hand to hand then we want to scale it up we started teaching fishing so we ended up teaching best practices of the portfolio and then we were asking ourselves all right how do we go beyond meaning how can we build stuff that is there for the developers when we are not there how can we build things that go beyond ourselves and the portfolio and move the midle at the entire industry level and uh that

was sort of a strategy that was devised after seeing the wild success of The Foundry tool kit and for the audien's context Foundry is a testing framework it's like the pie test of solidity and it lets you build and test your code very fast and not only that it also gives you an integrated Suite of Tools around it to make sure that your code is secure that you don't lose money that you have access to to Advanced auditing fuzzing and other tools that you need in your day-to-day to be successful as a smart contract developer and to not cause anyone to lose any money so that was the beginning that was two years ago and that was where we left the last ZK conversation um after that um my boss

Matt came to me and he was like okay Foundry is good what's 10x better than that and uh we had to go to the drawing board and think really hard on what to do and uh the thought there was where are gaps in the developer ecosystem in crypto in ethereum in Foundry we had identified a gap in the developer experience in the W project which is what we're going to talk about next we identified the Gap in performance and extensibility and contributor friendliness of ethereum nodes so our thought was all right let's build a new ethereum node and for the audience's context um a node is almost like the the lowest level piece of

infrastructure you can build for a blockchain it's like the soulle of the chain it has every component that you need to download things from the peer-to-peer Network to execute them locally to do simulations to write them to a local database expose them for further data processing it's really a meta piece of software that you can use to build anything else and the r project was basically a new ethereum node built in Russ for high performance security and modularity and then with the w project we're hoping to level up the entire ethereum ecosystem and Beyond it's funny as you describe like what a node what node software is I'm

just remembering like when I realized you know you hear about solidity devs and then you hear about this core infrastructure it is it's a separation right there's the nodes that are running the blockchain in a way but then there's this the developers who are building on top of it at least in the ethereum context so so I I think we should we should B about Georgio's personal Journey cuz this is a U-turn for him to come back to to building nodes his first his first his first job what was that L2 called or was like its own chain that you worked at Loom Network Lo right you were were you working on the Node yeah totally so it's kind of funny through like yeah and like not not many people know that so I started my career uh as a technical writer in

2017 uh where I would be basically write lowlevel technical post not that low level in hindsight about how to do solidity security Etc I was part of the team that did crypto zombies way back which was the main coding school that unboarded many people in solidity and uh during our time there uh that was the company was called Loom Network in 2018 2019 we were doing side chains on tender uh we were not using the cosmos SDK we were building pure ABCI application on tender we had done a lot of things that were I think ahead of their time but didn't see much of the light of day due to maturity of the stack demand not

being there our timing or execution not being the right one but yeah I started as a JavaScript developer then got into solidity then got into nodes that's how I learned how to write go in the first place then I did a long journey uh Consulting around the industry where I picked up ZK I picked up a lot of a lot I picked up rust eventually which got me into ZK uh where I collaborated with kobby giran uh common co-host of the podcast yeah um on early cellos snarks BLS threshold signatures and more than that and it was really a big Journey for me and eventually got back into application development so I started by writing solidity and by doing the crypto zombies code school then went into nodes

then went into the whole ZK path then back into solidity with The Foundry tool and now we're back into reing rebuilding the node stack for me the journey is like you know have seen saw most of the stack and now it's okay let's rebuild it with a very let's say intentional strategy on what works and what doesn't and what needs to be future proofed why did you end up working primarily on ethereum I mean I think of that moment in the network and the timing and and like how much attention is on it but like had you considered looking into other ecosystems or other tool sets consulted with many non ethereum projects before um in the past like all my ZK work was entirely on

outside of ethereum um when I was Consulting on the cosmos SDK or tenderman side it was all not ethereum in the cosmos yeah exactly so generally not an ecosystem Maxi by any in any way I've looked like I've written a bunch of Solana code in the past I've not written much move personally but I've read a lot of it why ethereum well it's because it's just a thing that I learned the best honestly and the thing that I prefer to be playing ball in and that's the extent it goes you know we could talk about values we could talk a lot about other subjective things but I think in the most objective sense um it's the thing that I've spent the most time on I know the best I feel like I can move the needle the most what

existed before wreth like let's do the landscape of other network or other a graveyard also node software yeah I mean I remember when it was e two time and there were like 17 client developers teams do you remember this still still so the the evolution or the history of ethereum Nod is a very interesting thing to look back at also it's just interesting to look at nodes in the past where ethereum has you know 10 plus node implementations whereas other networks have maybe one or two uh well at the top level again what is a node a node is a thing that runs all the time that implements the pro tool in this case

ethereum um why is that important it it's important because if the node can be fast then the chain can also be fast but if the node is too heavy to run then the chain is not going to be able de centralized so there is a seeming need for a very efficient set of nodes that also are able to be extended for the future and also invite people to contribute to them to learn how the protocol works so that's a few questions that popped on our minds when thinking about why do we want to do the W project but looking back for ethereum for example the first node implementation I think was Alf or alith by gav and friends back in the day and then we got

go ethereum which is of course led by the brilliant Peters lagy and his team and then we got a bunch of other clients which you know the list is too long there was Bess there was nethermind there was Aron now there is re there was a Kola node there were a bunch of nodes that were were attempted over the years some are still maintained some are not and in general the ethereum culture um has a framing around this concept of client diversity that there should not be one implementation of um the etherum protocol there should be multiple ones because well one might say because this is good for the safety of the network because if there is a bug on a majority client that means that the network might have trouble processing new

transactions whereas if there is a client that has say 20% of the Network that has a bug the network can keep going which is great for their Network resilience I would wager that having multiple clients is great not because of that it's because more people learn how the thing works we're building very complex systems and it's very hard to on board people on how these systems work at such a scale and if you're securing you know a 50 or 500 I guess at this point billion dollar Network then you you probably need like a lot of people knowing how it works a lot of experts before re though like is would you say that there was like a dominant team there there still is the the the go

ethereum the GU team is by far the most used client with over 50% of the ethereum L1 Network followed by the nether nethermind client which is at 25% is of the network uh both of these are amazing projects they've existed for a long time gu over 10 years now nether mind over 5 years overall there's an interesting point so when people ask us what does success for the ref project look like they're like oh do you want to kill or do you want to go very hard on like the layer one and I'm like no man like the the layer one is there's nothing to win um by gaining more it's a wrong metric to be optimizing for L1 adoption above a

certain number you want to have multiple client up to a certain number let's say 20% for example or 30 um below a certain amount such that no critical bug can hurt the network yeah and that's your stability feedback loop that is like and we like to think about the success of the rest project in a bunch of feedback loops so in the layer one case what is the feedback loop it's the stability yeah the stability means that if we can operate the etherum network with 20% of all stake let's say on the ref project I'm a happy man because that means that 20% of Stak say whatever the number is gives us enough confidence that the W project is stable secure and is not

broken and we can play ball with higher performance there are these examples in the past where I mean this is maybe more during the proof of work era of ethereum but like where there was the GU client and I remember there was the parody ethereum client and I think one had a bug but the other didn't and actually it sort of saved the network in a way or it allowed for right I don't know like the node operators or the miners to switch quite quickly over to one is that still the intention with having these multiple client teams and multiple like like percentages but not having just one single majority percent like owner or sorry not having just one majority client software so that is definitely still the case in ethereum I think

reasonable people might disagree I think from my perspective well from my perspective just to say it it's like convenient to allow for m clients because I'm building a new client right so yeah I'd love to have more clients just to State my incentive explicitly reasonable people many reasonable people in the industry including most of the Bitcoin devs would argue that one client is better because then you don't need you don't run that risk of having multiple people two clients disagree on the implementation because there's more eyes on a single implementation I I don't know to what extent this is a technical versus philosophical debate so I don't have a a strong view on where that stands I think more people learning how the thing works is great um just in

the abstract and how much adoption that gets should be marriage driven and not you know the basically there's something that happens in the E theum Community where people almost cancel the dominant client they're like hey guys like gu is over 60 or 70% you know gu is bad I think that's kind of like toxic culture and should be removed if gu is to have less than you know the top percentage in the market then somebody should build something that is like as good so that like it presents aible alternative but you know calling gu node operators and being like yo like you should stop running gu because it's above 66% or whatever and that's dangerous well that's kind of toxic because the next

best implementation might not be able to support you know like 20 billion Sak I think there's just a question of like what things are worth caring about over concentration and what things are does the market choosing that concentration is actually a sign of quality matter and I definitely think for node software the market is choosing because it's like a developers have to choose B exchanges and you know on-ramps have to choose like all these people who have like very different concerns and if they agree on a shelling Point that's effectively the market saying like this one is like the easiest to run doesn't has the most security whatever whatever those properties are versus like okay concentration of stake is is a more

direct thing right that there there obviously it it matters but yeah I I I do think there's a bunch of concentration programs that exist you know yeah and remarkably coinbase for example a few weeks ago they were like yeah we want to support client diversity we didn't have a great client so far and now we have changed a bunch of our stake on nethermind which is a great feat for the nethermind team and that like exploded their client adoption up to 25% this is a testament to okay there exists more production ready software that we can use to increase the resilience and redundancy of our infrastructure so in every way to me that seems good you know having independent um it's almost like a Hydra you know it's a multi-headed beast

and you need to cut all of the heads to make it like die uh and that's what contributes to the resilience of the system what would happen if more than 2third of the like let's say there's three teams that share the majority of the pie three client software that make up the majority of the network if two out of three of those were to fail what actually happens like does that onethird just sort of maintain it so it depends on the network so let's let's exactly so let's um there's a very clear bifurcation and consensus research here uh around protocols that favor liveness over safety like Bitcoin or like uh ethereum and protocols that favor safety over liveness an example being tender um

in this case we're talking about liveness over safety protocols and the analysis this is a different versus the tender mins in the tender mins there's a very simple thing that happens which is if there is a bug that means that you know client a and client B disagree and there is like not enough stake to finalize a new block the chain stops and um people intervene in some way and people fix it yes and this is It's almost like a feature of the safety over the liveness protocols like because they're like okay bug happen let's stop and let's have someone restart the network fine in the ethereum and the Bitcoin case this is not how it works basically in Bitcoin it has proof of work liveness is maintained by you

know a new person coming in and advancing the chain with proof of work in the Pro of State context there's the cont the concept of the inactivity leak so let's go through an example of what that would look like so let's say we have G at 67% and uh w at the remaining and uh that is how the stake is also distributed so there's 67% of stake on G and 33% or whatever on W so if there's a crit on gu because there's a different analysis that might mean that an unsafe State transition might be processed what's the outcome of that is that it might also end up getting finalized after 12 minutes so the theum network

finalizes every 12 minutes when it has gathered enough consensus signatures what the result of that is that the W client will know no longer be able to follow the GU uh Network basically if all gu nodes have a bug well they will still agree on on that you know they will just agree on a bud State uh and the non- buggy nodes uh will just go to a different network they will Fork off because they cannot agree with the buggy State and so you have two options there you either pull the small ones to the big ones or you pull the small one to the the big one the small ones and how does it work it's either by canonicalizing the bug you say Okay gu had a bug you know maybe it was not that

serious we will add the patch for that bug in WTH so that it so that WTH can follow the GU and basically the bug is canonicalized and you you go on with your life and that requires an intervention in the minority part of the network and you didn't disrupt finality this actually happened a few weeks ago in binance uh where there was actually I think a bug on gu or argon it got finalized in whatever cont in whatever consensus context for binance smart chain and they ended up literally inserting a transaction hash string with the regular State transition for that transaction hash in one of the two nodes I forget exactly what it was a big it

was a big mess but there is precedent for this happening this also has happened in some ways in the Bitcoin in Bitcoin where there was an old patch I forget what it was where again consensus bug was canonicalized because it was Tiny now the alternative which is the you know this this again requires manual intervention this means that okay G finalized the bug we're going to go and Patch re and tell our re node operators reboot your nodes with a patch such that you can start following the buggy chain and the community has agreed that the buggy chain is fine uh in the other case there's the concept of the inactivity leak so gu nodes from the perspective of the r side um will stop being right yeah everything that's happening there is

kind of deleted after that exactly it's literally not part the large over exactly so you how do you move the large nodes over well a like they have to stop running the buggy client so they let's say they replace the budy client with the with a good client um let's say gu releases a patch and what will happen is that it will need to wait for the stake to transition over to the non- Budgy client so let's say there's no intervention what this will kick off is that from the bre perspective all the GU nodes and their consensus counterparts will start getting slashed for inactivity which means that their Stak will drop you know like weeks in this will take weeks to actually work out because it's like it's a slow drip uh you have a a bottle and it's like slowly

dripping like water out until it's below a certain amount which makes the WRA side enough to finalize so this is like a very clunky process it takes weeks I think in practice you might see manual intervention uh in all cases you know because people will be like ah do you wait like like 10 weeks for this to automatically resolve or are you going to do it on your own now the good thing about this is that the worst case outcome is handled automatically this means that you know on no intervention 10 weeks 10 weeks let's say we're in World War 4 or three whatever the network chugs along which is pretty exciting as a fallback or self-healing mechanism and of course on top of that you build whatever you want slight

tangent but everyone loves talking about these like World War 4 resilient blockchains right like like like you see anat always like making fun of Bitcoin for this but like honestly isn't electricity going to be cut then anyway so like how the are these things I like I I just like this idea that that's your first concern is like crazy right so so exactly so it's it's very clearly like a Black Swan tail tail case optimization which is why you should probably adjust your system design and waited to the probability of that event happening right and there might be unreasonable trade-offs that you make in the rest of your system while trying to support such cases one common debate in

the ethereum community being the solo Staker narrative versus you know should you have a solo Staker at home running the network versus um enshrining a delegation primitive in the protocol so actually this actually gets to a an a question that you know I'm thinking about more from the future of clients versus sort of the history of clients cuz like so so far we've kind of talked about the history of clients how when you have multiple of them how things interact but you know if I think about a lot of modifications to clients even prior to W like you know flash Bots adding a sidecar for doing an me auction you know other evm compatible chains modifying the client for what they need

l2s modifying the client because they have some intermediate representation or some other virtual machine you know it does feel like the client itself is is becoming this kind of like modular thing and people will mix and match for their use cases so like where do you see that going right cuz like if I look at something like reaking right they're going to take components out of each client if I look at something like data availability like they're going to you know what I mean and and like what's the role of a light node in the this if the client itself is modular because like the light node should just be a subset of the full full node at some point right totally so many many thoughts on this well first and foremost let's observe the general Trend by zooming out

and being observ on the fact that nodes are getting modified more and more um the vanilla case of a modded node is Bitcoin cash change the block size the more elaborate version of a Bitcoin node of a modified node is BSC which is you know take take the GU node and crack up a bunch of constants an even more elaborate version of a modified node is Mev gu which is a side card that you mentioned and there is like even more elaborate versions of that these days with FH rollups like all basically every roll up all of these things effectively or arbit exactly exactly so it seems like the ethereum ecosystem or the the general the node ecosystem has started

to effectively extend nodes in ways that who has predicted the substrate and the cosmos SDK ecosystems because these guys they were like oh like every body will want to run nodes and they will want to mod them let's build the framework for that you know what came first the chain or the framework I would wager that to build a successful chain SDK um you need first the chains so versus building first the framework why am I saying that Cosmo what you're saying is Cosmos and Polkka dot were too early yes yes yes um and I would link this back eum took all those ideas and added them into their system eventually yeah I will link this back to the to the W project basically from the side of the what has worked

basically we have had indication that all right Mev gu style modifications make sense rollup style modifications make sense there's a bunch of like um other extensions like Shadow logs that also are part of the set of an extended or modified node so what gives you know what are the shared things that people do um turns out there's a bunch and how have people been doing them they've been doing them by four in the node and forking nodes is like very clunky uh and when I say forking I don't mean Fork the main Network I mean literally go on GitHub and click fork and have your own copy of the of the code base and modify it now this has a benefit and this has a disadvantage or a few disadvantages the

benefit being that all right you have full access to the code base go crazy it also means all right you have full access to the code base you will go crazy which means that the code is not going to be maintainable or that you're going to do UNS things that were not expected by the creators of the code the question is who's crazier the code based post modification or the developer who made right like yeah totally totally because you know T like you you would know this like node maintainers go crazy over the crazy stuff that people do to their don't worry their Twitter's are there's always these like Edge Twitter events you know they have the kind of yeah no it's totally it's totally crazy so okay the W project observed that and we said while we're building the node

let's be intentional about the future of nodes and build the node not just for ethereum L1 but build it to be both an L1 node an L2 node and also a framework for building nodes so we're calling this re core where the or re SDK where the first node that we implemented was the re L1 the flagship node the node that is our stability feedback loop and then our second feedback loop which is for performance we used L1 as a weak performance feedback loop but that's not good enough because L1 is not that fast maybe just to take a quick pause what components do you view as like part of core like you know networking stack

virtual machine like like what are the yeah so I was just going to give the simple examples of like where is the demand and like extract the components out of them it's it's hard to imagine the framework without looking at what is needed from the market um so from our perspective what we identified from the market was the L1 the L2 and the modified the further extended nodes and uh what does that give us it gives us okay a the the node framework needs to have a consensus interface the first consensus interface that we're supporting is the engine API which is the consensus interface used to interact with ethereum biton chain this ISS what allows re to be used as an execution layer client for ethereum and this is what all of them have right and this is what all of them have every consensus

and ex ution ethereum node has an implementation of the engine API for sending and receiving messages this is the equivalent of the ABCI interface in Cosmos um and padot has its own variant of that the same engine API abstraction can be used to run opack nodes so w by supporting engine API and a bunch of like specific opack modifications uh which I'll talk about in a second it's able to support Layer Two use cases which is very exciting what do layer twos need in general from the deposit side from you know from the perspective of the layer two receiving transactions they need to incorporate um any modifications the state transition

function has and the derivation function but the derivation function is part of a a piece of software that the op stack provides so you don't need it so the main thing that we really needed to support L2 on ref was a modified evm which meant that we also had to do the same thing that we did on the Node at our evm instead of having a forking version of the evm where you need to Fork it and do all the modifications we made the evm that uses ref that re uses a platform which means that you can inject pre-compiled you can inject custom op codes you can add pre poost execution Hooks and all of this is very powerful because it's done at run time not at compile time with minimal overhead and this is very powerful because you don't need to Fork the

package anymore you can just build composable modular small blocks that you inject in your code and you know to any listener you might think hey this sounds like Cosmos SDK and it is because it really is how node framework should be built it also sounds like a Docker container ah exactly exactly you get it yeah so that's part of like where we're going exactly so we're the W project is moving towards that something very interesting you said to me last time I saw you in person was an L2 can just be viewed as like a pre preh hook and POS hook post execution hook yeah post execution hook and may maybe pre if it has to load some extra state or something or like do da type of things

so uh you know how did you get to that abstract that set of abstractions you got to right cuz like you've described this thing it's like easy to understand it's like relatively clean but I imagine you may have taken a circuitous route right you may have tried some other designs you may have been like oh this particular part is not modifiable at runtime this needs to be imported and then you how did you get to where you got and and like what were some of the mistakes along the way cuz I feel like the mistakes are just as valuable yeah no totally so how did we arrive into this well design wise we really took a lot of time to just understand what kind of a post execution Hooks could exist so just to give you an example like a post

execution hook could be an indexer on every block the chain emits a bunch a bunch of events where there might be transactions State diffs Merkle tree updates or even like traces and you want to index them somehow so we had identified that okay there's something like there's an abstraction that says read from L1 notification and then we thought further and we're like H when people build indexers they also don't build reorgs into their indexers which means that you need to wait let's say up to six blocks in the past or 12 blocks or whatever um and there was a company in the past which really charg the heavy amount for providing reor aware streams uh of data

um from our perspective we figured oh it would be interesting to provide that natively so what if the re node gave you a subscription that gives you a reor aware stream of every new piece of information that arrives what can you build on top of that well what you can build on top of that is indexers that are real time um because you just read the chain as it arrives and if there's a reorg just undo the things that were reorg away and you reapply the new things and you have a clean abstraction for that um and downstream of that you can really do anything you do compute on top of it which means that after you've indexed some data let's say you have converted the L1 payload the L1 data to an L2 block then you can pass it through

an evm or you can pass it through a move VM or some other VM uh and again you start seeing how this starts to resemble all the stories that we heard in the past from substrate from Cosmos SDK from all of these how you can really run any runtime on top of this m so what we thought would really work here and I'll get to what we tried and didn't work is we think that we can basically build a a framework for running extensions on top of a node natively why is that important it's because right now to run extensions on top of nodes a you don't get deep enough integration with the node for example you don't get access to the reorgs that happen on the L1 and anything that depends on L1 on L1 State

needs to be reor safe so that's a very core requirement for building fast streaming real-time applications and downstream of that there is after the indexing there is like all right like I need to figure out a good abstraction for um extending the node and this was us really modeling it as okay there's an extraction that happens James press witch also has written about this in the past there's an extraction that happens from the L1 data then you transform it and then you load it somewhere now what is that this is a generalized ETL framework which is very common in all of web 2 and the clouds so part of our general principle just to answer the question TR is how can we reuse as much of the web 2 Collective hive mind

knowledge into this and get out of the almost disease that we have in crypto which is uh not invented here you know like people like to reinvent things all the time to put names on them uh basically what we stumbled on was a ETL framework that you can deploy on top of a stream and that stream just happens to be um relating to ethereum data and that stream has an operation called a pend and revert but beyond that you're really in standard data science or data engineering land which is the exciting part because part of the ref project again is like to grow the pie enable people to build things that without while knowing how things should work wow

so on what didn't work um honestly not much didn't work like most of the things that we did on this worked from the beginning but we were we stood on the shoulders of giants right I I've worked on Cosmos SDK like mat sides from our team he was working on substrate fed also from our team was working on substrate we've worked on all the big Frameworks uh We've read most of their code we know the shortcomings and basically this has set up the W project to not only serve for a very good L1 node and a very high performance L2 node which is kind of like the the two obvious things you might think one would go but also to create a general purpose framework for going beyond the L1 and L2 nodes into indexers me launching more rollups on top of like the node or even

just going ham on cryptography and other things for example and this might tie into the rest of our conversation for example I I want to run ZK VMS on top of ref um on every block why not like we have the we have the objections to do that cool I want to ask something kind of a little simple because I I like in talking to you I'm realizing something I didn't fully realize before which was that like I always thought of client software the nodes as mostly living on the L1 but you're talking about WTH on the L2 is a node operator running both at the same time is there like a standalone L2 node ecosystem as well like I don't know anything about this I

just realized as we're going through it yeah totally so let's talk about what's been the status quo the status quo so far and where we want to take the world okay so to run an OP stack node you need to run four pieces of software you need to run the L1 consens layer mhm let's say Lighthouse you need to run the L1 execution layer say w you need to run the L2 consensus layer which is op node and you also need to run the L2 execution layer which would be op so in this case you're running four pieces of software that communicate over some interface that is well defined uh generally this is the engine API and the logs would you put like the evm on top of these things like is it like evm runs

on WTH or the evm is inside of WTH and it's not even like a separate process like basically a node is a piece of instrumentation software around how to pass data through the AVM okay uh it says okay data arriv from here pass it through this go through evm and then write it to the database it's within it okay but this is great Georgio those four pieces that's so helpful to kind of imagine so you're running all four of those things if you're like actually right now you're learning all four of these and here's the thing like we're not in the single rollup world so like if you're going to run a thousand of these um you need thousand copies of the stack or variants of the stack for example maybe you can reuse the L1 part of a stack but you need a different L2

CL and L2 for each layer of the stack and that is insane like we cannot be in that world uh if we want to have like a 100 or thousand or 100,000 rollups yeah um so the re project observed that rollups are post execution Hooks and you actually don't need to run L2 CL and L2 as two different Services you can just squash them together and put them on the Node as a post execution hook now why is this exciting it means that instead of being like for a thousand rollups you need to run you know maybe one L1 and L1 CL stack plus a th000 copies of the L2 stack you run one thing which is the L1 CL and the l1l and every rollup gets

launched as a post execution hook on top of the main node got it now this is great because that means now my node at home with one binary or two if you're running Lighthouse externally it runs any amount of chains that I want so where we're going Anna is that right now people run nodes you need to do rest node Dash D chain equals 1 and then to run another chain you need to do-- chain equals 2 on a separate terminal we're entering the world where you write dash dash chains equals 1 comma 2 comma 3 comma whatever may maybe a a somewhat more nuanced question is like at some level you're going to have the same problem that all of these kind of like

microservice things have where there's like a scheduling problem right of like I'm running these there's some that you're going to have to like either Force the user to manually specify some type of like dag structure that gives you the dependencies of like which nodes are dirty by like a new thing and do all the downstream dependencies need to get run or not yes this this is like we're rebuilding Earth flow yeah exactly it seems like you're basically doing some like airflow kubernetes type scheduler type of thing yes so so so we I to keep front running your your descriptions I know I know I've this is very this is very yeah you've been Ming me yeah like no this is very exciting to

because like you you you really get it like literally what we're doing here is we're taking the two biggest one of the two two of the biggest cloud inventions like airflow and everything around this orchestration stack and kubernetes around the orchestrating the supply uh the you know like airflow and kubernetes like go hand in hand in the sense that airflow is the thing that like schedules a bunch of jobs that the dev has written the demand side and kubernetes is the thing that orchestrates all the infrastructure for that and we're kind of doing both um exposing them inside of the rest node now to what extent we end up like being victims of this not invented here uh syndrome that I said earlier uh we need to be present to it but basically what we're doing to is

spot on we're basically introducing ETL jobs orchestration um Alla web 2 um where the input like in the purest form it's like a reor aware stream of the data that comes from the L1 and everything else gets derived from that with some dag like um structure now to what extent uh we make that programmability very high so that you can schedule jobs very complex um we'll see right now how this works under the hood is that you write one async function which is the The Meta post execution hook we call these execution extensions exact um so we have a post execution hook and that can include all the other ones inside of in

whatever shape that you want and that is built by the developer and compiled statically into the node that means that when you're building your own modified node what you really do is that you don't Fork anymore so we're we we have exited this world of forking the binary forking the repository and making modifications any anywhere you want what is exposed to the developer is the famous Builder pattern so you know like in software where you do let x equals F Builder barbaz do whatever do build and that gives you back the full data structure that you're looking for and it gives you an easy configuration interface um for writing that in our case we've built a node Builder so the

node Builder says node Builder configure then it says P2P layer here's the config do this here's the config and then it says do install execution extension and then when you do that you start adding all these extra jobs that you want and these are compiled into the main node where we want to get it to is into a r Cloud Style app store where you can literally have your node and you write re install plug-in name it downloads the plugin it keeps that around and that gets us to the world which is very similar to kubernetes and Helm where in kubernetes you can install Services over a package manager almost that defines a whole format of how this extensions are

defined and just to clarify what those plugins or extensions are those are the me ones that L2 one is that like those things okay wow yeah and this is effectively allowing like developers to light plugins and collocate them with nodes with Native database access low latency access to everything this is really how you build performance software instead of creating Jon RPC interface to them and requiring like copy pasting a bunch of stacks the where we want to get it is that we want to basically create a kubernetes moment for crypto where we can pull in services from a service hub similar to Docker Docker Hub and create like a set of useful services around it it doesn't need to be Crypton native only can be

offchain non-deterministic services so you know machine learning you want we will we will write a plug-in for that and we'll let you run pie torch on your machines this is taking us very close to the land of reaking then because you know what are what are they doing what abs doing is just running the side car and then infrequently exactly exactly so this is this is a generalized framework for launching side guard processes that get triggered either on interval where the interval is like per block denominated or like just spawn an offchain service that has a tight integration with the rest of the node and who runs the service yourself someone else if it's someone else how do you pick them restating is a very credible option it's it's funny that it's funny that you describing this

makes it sound like you're going to start a cloud service provider I mean like I I don't have a commercial plan baked for the rest project yet um to the extent that uh a cloud esque like w cloud decentralized cloud thing makes sense I would love to explore it and if anyone's working on it should message me but I think what got me into crypto tun was the decentralized cloud right like crypto is about orchestrating idle Resources with incentives in the very abstract and I think this is like the way that we can get that I think one interesting thing about the way WTH has developed versus say you know l1's is l1's have like tried to put all of the Innovation directly into the actual chain State versus the client State

they've kind of like for the most part like it's been like oh you know we have this particular you know we have block STM or we have like some feature we have this narwhal some weird me what different consens algorithm all those things so they're like baking the new feature into the Chain versus just trying to have the client Upstream a lot of those so locally you're running the new feature but globally you don't necessarily need to it's almost like users almost like soft Forks that the user gets to choose effectively no 100% And I think crypto also suffers from this General thing that like people think that like products or well features are companies uh and I think you know this

kind of like just to put luckily AI exists so we're not the worst Defender anymore otherwise it that's a good it was a lonely road I mean yeah man but like just look at it you know for example like having a par evm in a vacuum like that's not fundamentally defensible you know that's a technique that you can apply anywhere and it gives you a speed up yeah great uh and like there's a question on like or on people on everyone building you know and to be clear we're investors in monad which is like a parm among others you know basically the question is like when you build a feature there is a time to valuable state that and beyond that you know your feature is kind your features Alpha is uh decayed um because everybody

has it let's say a year from now so from our perspective from the W perspective given that we're not like doing anything like fancy ourselves right now the strategy is very simple it's create a good node for L1 for stability create a great node on L2 for performance and be enough opinionated by learning what others have done wrong in the past so no wasm like subr did no low performance iav stuff no mle getting baked in from the cosmos Decay no poka do economics baked into the system like we've basically out of all the craft that we think made the previous Frameworks not work and we're exposing enough infra to hook on to

build high performance rollups M infra indexers or avss yeah the AVS part is the kind of part where I feel like that's where you kind of feel bad for polka dot right like they they really did come up with the idea and they kind of just messed up every they like completely lost it I've been looking a lot at the substrate docks like the last five six days or so because like it's kind of shocking to run to just like look back at history and like see what other see see what others saw yeah like uh it's kind of shocking how you know it goes like the old like anecdote how you know every good idea has been written in Bitcoin token 2010 you know every ethereum Innovation

is actually in substrate well no I'm not saying that and Cosmos and Cosmos I I think I think like you have to give Cosmos a lot of credit too I I I think obviously both poon and Cosmos think they invented everything but like in my op outside they both they both had some ideas that were totally uniquely totally and and I I would even wager you know been trying to understand like again like philosophically or like looking back at history what went wrong you know why did Jay gav and vitalic or whoever else like where did the Friendship go wrong what could have been done better you know and could we have been in a different world kind of going back to like they had it before it was in there like the substrate and Cosmos stuff it was all there but they couldn't quite figure out a way to all work

together this is something you've been actually thinking about it it kind of bothers me because you know I I just look back at like when I started writing rust in 2018 and you know parity at the time was the thing you know like uh and I'm just like wondering like what happened it makes me sad to some EXT because you know the world would have been such a different place had the last 6 years of like all the rust expertise that these people had had been spent on you know things that had demand frankly um so yeah I'm a bit sad about it well a lot of them did move a lot of them did move to ethereum I I feel like you talk you there are a lot of like former polka dot rollup devs AVS I AVS developers is

like pokka dot Central for example like people are using substrate to build sequencers uh for rollups because you can build like subrate and Cosmos SDK they give you state machine replication which is effectively how you build decentralized sequencers um so I find it very interesting to see the Resurgence of these Frameworks of the consensus side of these Frameworks for applications built without the framework just because people or without the ecosystem so you know people build tender app chains for sequencing rollups for sequencing evm or Celestial rollups um without caring about the cosmos or without caring about P IBC and stuff like that or or ail right exactly right ail is basically it's basically full sub

yeah exactly exactly so I I find it very interesting to see that and I I am also observing that in so far these were the only Ways available I think there's a clear Gap in the market for a very high quality consensus implementation in Rust that is able to play the role of tendermint or or Comet bft or uh the substrate consensus without any opinions around the rest of the thing you mean like opting for one or the other like something that actually has I'm I'm just saying like consensus algorithms have improved a lot and and tenderman was the best one at the time that was unopinionated take a fa tolerant State machine replication engine and plug it on anything that was amazing I think

somebody should go and take Com bft or tendermint rewrite it in Rust map it against the latest consensus features which in my view is generally the Narwhal bullshark literature and go and do that open source and give that to the people I think that will change literally the world in terms of high quality consensus implementations well I think another important fact that and I I think like maybe some of the new l1s don't totally realize this fact at least in my opinion is most of the improvements to consensus since 2019 have little to nothing to do with the theoretical Properties or like I made a new consensus algorithm it's almost all like Implement like you know narwhal and

stuff have some stuff on the edges where there is a little bit of theoretical stuff that improve them but the majority is just that the implementations are not academic code anymore yeah and like the general pattern is still like the the same shape as tender man it's like okay I'm doing one less round of commits here or I'm doing less communication but like the shape there was even a paper released a few weeks ago about un like the shape of all consensus algorithms and I think going off of that would be really powerful yeah and I I just think it's like people underestimate the time it takes to harden implementations and then like reimplement but optimize the next one and that often times takes much longer than like hey I came up with a new consensus algorithm give me money

for my L1 totally the the what I know is that the People Want it like there are pull requests in the ref code base where one person at least has implemented the p bft uh where pbft is you know ancient in terms of literature but they have implemented a pbft in pure rust and we were thinking oh okay that's interesting like maybe we should like productionize something better than this one thing I think that potentially is like isn't true in kind of the existing Cloud Market nor in the existing sort of like all L1 I'm using a different consensus Market is this idea that you know say you have a bunch of modules that are running in your client um and you know each of them has different

dependencies uh but they can each use their own subset of consensus algorithms that they want so like maybe you know like the AVS node is very infrequent and you only care about liveness so you use like some cheap but not finalized consensus but then in the same thing that you're running the like 500 rollups you're running some of the rollups want Grandpa some of the rollups want bft some of them you know like they all are making different trade-offs but you have a single environment in which you can homogenize these different consensus algorith because that's like very different than what most Cloud providers do they just use raft or whatever they're like single uh consent and and also something to observe is that like every user of the clouds they rebuild

their fault tolerant infra on top of the raft or whatever that the clouds Expose and this is like almost like a new way of building like serverless systems um and no not not just that it also gives you access to the entire set of crypto data natively integrated and that feels powerful I don't know what this will get us but this feels powerful well it's just sort of like if I look so you know the disclaimer here is like I keep bringing up praking because I spend a lot of time working on it and reading people's code and trying to understand the security risk stuff and basically what I've realized is almost every AVS has their own suit either explicit consensus protocol or pseudo consensus protocol on top of eth that the node operators agree to in order to how are

you going to coordinate all the noors yeah so so you have this thing where you're doing this like heterogenous consensus but now it's in like two different environments you have to synchronize that and there it's a little bit like messy whereas like kind of the vision you're describing seems like you could do that but it's not it's all in one kind of container totally totally again I don't know what this looks like so I was with my housemate Liam horn who is the ex CEO of optimism and we were drawing on the on the Whiteboard what this could look like you know I envisioned like a you know how like Docker has the like the taskbar icon um on the top of your and you click it and it shows you a UI with all the running Services I was thinking like maybe the

red stack is deployed as a taskbar at the top right and uh there's a scheduler that says hey you have this many idle resources do you want to you know pay get paid five bucks for spending 2% more CPU uh here's like a white list of services that you have opted into running interesting where what does that get us you know uh because that that is the real yeah well I think a scheduler that has to be aware of a consensus algorithm is actually kind of different than existing schedulers right existing schedulers you know you have the simple scheduler where it's like it's all in a single machine running serially okay that's easy the next question next type of schedule is like I have Futures and

promises right like I have it's asynchronous there's multiple machines some of them are G promising saying like hey when when my task is complete I'll send it to you but you're going to have to wait and maybe you'll wait forever cuz like I crashed and and then then the next level which I think is interesting is that there you have Futures and promises that are heterogenous right like one type acoss different devices across exactly right and that's what you see in like mobile Computing versus Edge Computing versus data center yes but somehow that's the same problem as this multi-c consensus thing it's like it's like heterogenous you're you're get you have this kind of like heterogenous set of guarantees that you're kind of so I I feel like it is it to me that's like the end state but like I'm kind of curious where you think that goes and how that

evolv to totally how this looks like Yeah and I don't know who needs this but I but I think abss are basically doing this that's what I'm saying like my reason for bringing this up is I'm seeing people building this right sorry like I guess like in my mind I'm thinking well who need this Beyond crypto you know I'm thinking like you know the the like the real competition here is gcp and AWS you know this is like who the ref project is going to compete with um so well ai ai workloads are like this right because inference vers training workloads will have two different types of promises to you yes so the the idea here is that the W project acts as a distribution ground for various tightly integrated offchain Services wow that integrate with the

entire rollup stock whether it's l1's l2s l3s l whatevers and it also allows you to build consense to tie into voting processes whether these are consens protocols whether these are MV options where it is like really like anything you want and let you coordinate resources across these mutually distrusting Services um one might say oh this is like the world computer uh original Vision there there's the realization that like everybody has been building the same thing and there's a singularity moment almost here where every literally everybody has been building the same thing from different perspectives you know it's so funny I feel like what you're also describing is something that we've been talking about on the show which is like from the role of the validator previous validator and then

the pro Networks you're doing proving the da the sequencing like the the me and proposing we kind of talked about like a single agent doing that I actually wanted to ask you though like something like aover Network or da does that also like tie in would that be something that reth would actually be hosting or do you still see those as separate yeah so for for da perhaps you could build a DA service or perhaps you could build a proving Network AVS like as far as I know what I would like to do as a post execution Hook is work with succinct or integrating sp1 into W as a post execution hook such that you can do arbitrary co-processing of any kind of like L1 data that arrived but also it

lets us do zkm as a side car to the W process and from that we could feed it to the suin proving Network and from that maybe goes to you know alvana now iru irreducibles B news provs so in general like in my mind there's this like there's parts of the stack that we want to build and create distribution channels for and there's from the Paradigm side there's of course a bunch of Investments that we've made that I would like to help succeed and so in my mind the W project is like U The Gauntlet in The Infinity Gauntlet that ties everything together um and every one of these projects like the stones that make the that make the superpower work um and this might sound too heapy but I think you know we're going to look at

the conversation next year and we're going to be like holy this all worked does it sound this is like so that's the thing hippie hippie like it's kind of like you know it's like Kumbaya like crazy things like what are you even talking about man you know what are you on like whereas like what what I'm telling you is that like literally this morning I sent my team a video showing how to do an a rollup that writes to sq light as a demo database as an execution extension so we literally have for the rollup case with the rollup case I would wager is the hard mode because it has like all the you know Crypton native components that you need to think about whereas building an indexer we have an indexer in under 100 lines of code and that's like a production high performance indexer like the AVS

component no we haven't figured it out yet but it's not that hard I would wager and also we have abss are fundamentally peer-to-peer services and another observation that we've made is that we can plug on the existing ethereum P2P Network uh on disc V4 or disc V5 and Rel leverage the existing connections of stakers so you know the crazy version of the of this whole thing is that like my vision is that everybody should be building inra on re and I realize we're coming up on time like my vision is that like every piece of infra in the future gets built on W this gets us like everyone running ethereum nodes this gets everyone in the world running stateless nodes stating ideally running additional services on top and this is

how ethereum and the ecosystem on top of it end up basically eating the AWS gcp and the others you know like what's the joke like uber Uber has no cars Airbnb has no homes like you know the decentralized cloud has no data centers you really think it'll be ethereum though don't you think we need something else that's like built slightly different to do that polka dot in you is speaking I'm not saying polka dot like how many how many polka do validator does zkv run I forget currently in the set but yeah no okay nice not that much no but like the act the the actual take here is that like I I think over time like the stack has been getting unbundled and rebundle over time over and over and over like uh andr

said many years ago I think we're basically going through a remiz of the stack without realizing it basically we unbundled everything we figured out the right abstractions now all of these abstractions that we figured out across different systems are too inefficient if you're on the ground you know if you're not on Twitter um and when you combine all of them then you understand okay this is what the new monolith should look like by coordinating all the services and then we're going to REM modularize it and I think in that next remodularization phase is there an opportunity to potentially disrupt ethereum maybe where would you go like you would probably need to like desb the da layer or the verification layer So to that extent I think for ethereum to defend its positioning or to maintain

its Advantage um it will probably need to like go really hard on uh data availability so as bre developers we're also core devs we have stewardship towards the ethereum protocol and so our view generally has been that da is something that ethereum should take uh a lot more seriously what's the 2024 um ethereum cordev and Twitter bio uh Vibe is it a forecaster bio now only yeah I I mean I don't know but like in 2024 well I think the cord of process is actually pretty good um if you think that there's no one you know there's no manager you know there's Tim boo who is like doing God's work on all of this

stuff but he's not like nobody's reporting to him formally you know there's no and and don't get me wrong I would love to go into the room and be like okay here's our agenda requirements like let's go through the list you know ABC you take this next steps action items okay see you next week I would love to do that that's ultimately like how you run a top down cross functional company and that's the wrong way of seeing how ethereum governance and how ethereum shipping really plays out I think the process actually has been like more functional than it ever has been and yeah there is healthy disagreement happening and that's why the W project really tries to emphasize a synchronous written communication so we did that with Cancun for Cancun uh we said okay

what comes after Cancun and we wrote A Blog that basically outlined all the upgrades that we thought were the right thing to ship in December or January 2024 25 Cancun or Denon uh whatever it doesn't matter okay um Denon is like the mixed name of like the consens the execution ler but like Cancun it's like Cancun is the execution layer side um and we wrote hey here's like the things that we think is our view you know it's not like this should happen or this must happen or this is going to happen it's like what do we think a year a year ahead instead of being in a call and going around the room with 100 people and being like hey why do you guys think Vibe check you know thumbs up thumbs down doesn't work like that our view is that people should be writing a lot more

and being a lot more precise and being very technical and again precise and scientific instead of Vibes based and so if I were to point out one shortcoming in the decentralized cordev process it would be that there's a lot of things that are Vibes based and I think my view is that like everything should come with a dock with numbers with feedback loops with like pros cons not with oh the network is not feeling well the network doesn't have feelings the network has benchmarks uh you know I think you should get that tattooed I think you got to get that tattooed Georgia the network does not have feeling feelings has Benchmark that that would be like a hilarious tattoo for you I sort of want to round out our our interview with just a little quick kind of return to ZK Georgio years and years

ago you were very much in the ZK space as I mentioned earlier you were one of the first you were at the first ZK Summit what are you thinking on ZK these days and you sort of mentioned you want to bring ZK VMS but is there anything else that is ZK related to what you're working on yeah the abstract thought is that the world is changing faster than people think you know like for the most part of History ZK was in you know a low is was in the like first 10% let's say of the sigmoid I think definitely we have reached well I don't know that we have reached like you know the peak of productivity but I definitely feel like we have made great strides the last years just from every way that you look at it developer experience amazing um do you

want to go faster than what the great developer experience gives you you can do that by writing your own constraints do you want to like just write some Rust and uh get a proof out yeah we have that client side proving also tractable combining NPC with the ZK snarks for doing collab collabor like all of the stuff is happening it's it's it's actually insane that all of this stuff is happening and I think we're getting to the world where okay now we have built all of this great Tech it's time to deploy it the real world like yeah exactly so what do I care the most about um verifiable Compu and privacy it is like always the conversation there's like a lot of concrete things to talk

about uh on the ZK meta I wrote about the ZK meta moving to smaller and smaller Fields evidenced by the goldilux field by the merchant Prime by the binary fields of binus I think that you know smaller is better Size Matters in this case uh and I think it's very important that we get to this end game of field size and be done with that part yeah it's just so much is happening man it's like kind of crazy um I think the biggest Evolution will be in figuring out like very fast client side proving and this was a quote that like Remco bemon told me one of the most skilled Engineers that I know who basically said that the devx the or the ux it has three things it's either instant uh spinner or

loading bar and we're way on the loading bar today and we need to get at least to like one two spins or less for client side proving to be something like users want the thing that's a good way to think about performance you know I don't care about your milliseconds I care like am I seeing a spinner or a loading bar or nothing so what I worry about in the ZK space always is security like when I worked you know I was like one month doing ZK and I had found a bug in like Kobe's code where Kobe is like the ZK guy right and I'm like Kobe like this is missing um so how many of these things exist what are processor for doing that what do the testing Frameworks for that look like in the end like what is the tooling needed to go beyond let's let's

go on a little bit of a speculative Journey so what do you think the the Dow attack for ZK will look like the Dow hack oh like a massive the biggest Z what do you think it will be yeah do you think it's a roll up do you think it's a a defi protocol like like it could be a bridge I think it's a roll up I think it's a rollup I worse I think it's like many rollups you know it's like at the same time you think it's like a single circuit that all of them using common or something yeah what's an example like aggregation you know pick an aggregation circuit yeah that will be deployed somewhere and that aggregation circuit might you know if I were you know like be like full Doomer which I'm never Doomer and I think that you know people

will do I'm not saying I'm just kind of Cur cuz like we know there will be some incident right it's I think it's like that's just like nature yeah I really liked there was some piece of work by I believe the team called verise where they were doing static analyzers for circum I think basically this line of work must like go crazy you know people must must must like go ham on that yeah so like all the standard things that we've done for security will apply yeah so like what will go worse I think it's going to be some complex unconstrained circuit like if I had to bet literally like on like I've written like on every library that exists like um Halo 2 is by far the most complex system for writing constraints right now wow which is also very expressive which makes it very nice

for configuring your pro fire trade off for expressing everything like very granularly in your Trace but just very hard man you know uh if it's like 10 people writing it okay uh but that means that there's 10 people writing it and that's why progress is slow if there's 100 people writing it or a thousand or 100,00 then it's a bit rough wow so if I were to like predict I would say something from the Halo 2 uh side you know would come and I'm personally the most excited about uh Circle Stark because it means that like all the stark Starks are available like on 30 one bit Prime which I means much faster proving I'm excited about plun 3 because it's obviously like they their open source stack to be building everything else on

top of excited about sp1 which we're investors in in succinct and I'm also excited about B to the move to the smaller fields and otherwise like techniques like you know from jolt and from other papers I think these are as I said earlier features that are small and portable and are basically going to proliferate in the entire ecosystem cool well on that note so I I was thought we were going to end on the what's the Doomer suggestion but now we've had a few more hopeful things from Georgio's sorry I didn't mean to I didn't mean to be the the Debbie Downer I just think you know it's it's you got to walk into these things with your eyes open I think it's good we got it out there for sure totally and again we need tooling we need a Foundry moment basically for Z

tooling I feel like you saying that just means it just becomes part of Foundry but that's just my you it it's kind of we we don't have anyone working on that we are collaborating with the software management team who is building Stark net Foundry which is H the framework for testing fuz testing kaido H which is amazing um but we don't have something for I don't know like I I don't know like how how do you unit as circuits will you even be writing circuits you know five years in the future maybe not well the problem is you have to then you have to unit test the translation right exactly exactly exactly and you know like unit testing compilers is even harder right yes how are you going to test like yeah I I think in general like

the thing to be present to is that like ZK changes a lot and if you're not spending full time on it it's important to like be first principles understanding like where the tradeoffs and what the ls that you have are and like ultimately what you have is like a polinomial commitment scheme you have a field you have like a lookup technique and then you have a front end that you expose to the user and like mix and matching these four is what gives you access to most of the techniques or to most of the products rather uh so I think to the extent that like one is like up to date with these where I think again the bleeding edge is like mercen Prime baby bear Circle Stark um beus on the fields on the lookups it's like probably lasso log up whatever else is

coming CQ and on top of that it's probably the VMS where honestly for the VM it seems like the risk 5 Isa has won for good reasons um so I would probably focus on that although I did see like uh maybe more than a year ago work on a z wasm uh there's so many people doing that which I don't understand cuz like wasm has all these like annoying problems like stack is not constant size and all this like I I don't know I I kind of look at that code I'm like scared you would know better you would know better here so I don't really know uh what is about I think in ZK actually one very very exciting conversation happening right now is around ethereum stateless clients verle trees are verle

trees easy to snark like that's honestly like the the most exciting conversation for me because we observed that for the performance of nodes that most of the time is spent on calculating the state route which today is the meracle Patricia Tri uh route uh this is a very expensive process and making it cheaper in every way makes nodes go faster making parts of it other parts of it cheaper like the inclusion proofs also make stateless nodes uh much much better and there's a general interesting bation in the ethereum road map that I would like to start discussing more and more so this is the first time I say this like with anyone really which is that I wish that we can perhaps have a real conversation around whether veral is the right thing to do or whether we should

you know this might sound crazy and I don't have a strong view but I think it's worth discussing it that maybe we should just ditch vericle Go full Ham on like data availability on the layer one and then replace add the snark for the mirle Patricia try and maybe we can do incremental improvements the mirle Patricia try that make it more snark friendly and this is like a big narrative that also the polygon zero or big not narrative like is a technical path that the polygon zero people have been exploring um and I think it's worth it's worth seriously entertaining it and I think it goes back to my point that ZK is moving faster than ever and might be that you know we might be making a commitment for 18 months in the future in the ethereum road map and it seems to

me that like 18 months ago we did not even think that like Fast Z avms were possible and now we're like at seconds proving times for ethereum blocks and that's huge that's new that's an update that's a that's a real basian update to like you know where how you prioritize and how you allocate resources and I think that's a big problem like in the cryptospace in general that you know I was having a conversation with nik nik mlon like a few weeks ago where we were like oh cryptography is like just my thing I don't think much about consensus where the fact is that like you can use cryptography to make the consensus better and the problem that we have is that more people don't have a spherical view of the ecosystem to to to serf as new insights and trun you know that like

the best things in math or physics came you know from marriages of the two right so what what are we doing here if we're not marrying all our sub Fields together it's true actually a very interesting thing I think is like that I think is a worthwhile thing for people to do is to go to all the different conferences and then meet the people who aren't into crypto who go to those conferences so like you know CK Summit there's a T of people who are like I work in like tech companies who I feel like I've met who are like oh I'm just interested in ZK but I I hate cry blockchains I I want to think about them or you go to like sorry ter ter you just said this I want to put this on the table um I think cryptography without blockchain is

actually a wonderful wonderful area to be spending time on uh Albert n had talked to me about this a while ago I I also believe it very humbly I think we should really like look at like everywhere in the world where there's a symmetry of power or where there's like adversaries that can like hit you badly this started you know like with literally htps on your website at the top left as you're see looking at the computer right now like this was the beginning of cryptography being deployed in the wide world I think crypto obviously is a bounty to getting private keys to everyone in the world is crypto is creating an incentive of Distributing private cues to everyone in the world we should be doing more of that we should introduce more client side proving mechanisms like I should never like leak my credit card or my passport or

anything really to anyone I want to just tun I just want you to think finish your thought cuz you were like go to all these conferences and meet the non crypto what what do you get out of that so so yeah so so you go to like you know say you go to ZK Summit you go to SBC you go to maybe you go to like an academic conference that has a couple crypto papers oh and then go to like a token Shilling conference like I was at last week because that's that you need you need the you need like all you need all parts of the world right okay and meet the people who are there not cuz they not cuz they like crypto because like it tells you something about like how well how much overlap there is like how much there's like new people coming in so

like the ZK stuff having people who work at like big tech companies showing up means that there's like this group of people who's following ZK with while avoiding all the cryptocurrency related stuff right like and that's an interesting demographic like how did they find it just the papers just like this podcast a lot of people were like the podcast more than at the ZK Summit sure but but but yeah but I think it's like kind of interesting to meet these people who like you know the consensus stuff and whatever the literally is a negative to them yeah um then you go to the academic conferences you meet these academics like oh no no cryptocurrency bad blockchain go okay but you know anything that like you guys

use that looks like my research great you know like you're like okay like um that one is more obvious what the incentive is and I think when you go to these things and you meet those people you get this understanding that like cryptocurrency itself is like really this interdisciplinary field and the only way it really actually makes large steps is when like someone come new comes in who brings in some new you know some other field and then it like it transfers and like I think that's kind of like the that that's one really good thing about going to this conference cuz like sometimes that person or those people are the ones that you know who who are like oh I I hate cryptocurrency but I'm going to these things cuz I'm

interested in this like one thing and then they we we've been talking to a lot of these people because the rust Community has an interesting bifurcation where like they don't like crypto at all years they haven't likedto we're using a web socket Library somewhere and like the maintainer at the bottom of the of the readme is like yeah I don't take contributions from like crypto people I'm like man like we want to make the library better please oh wow really wouldn't take contributions that seems a little shortsighted like if it's I mean but that's that's kind of like the demographic that like you need to convince right and I think there is something to say about like the entire like industry having to do better having to call out Bad actors and like really like doing crypto where it's useful and

not you know for I don't know like single landed profit activities great no more casinos okay I got to wrap us up um because we are way over time I want to say thank you so much for coming on the show Georgios and chatting with us thanks for coming back yeah it's good to be back and we have a lot more to ship and uh we are just getting started cool um and I hope we'll see you at more ZK events in the future too ZK Summit 12 in August J October October all right yeah see you there and also announced on the show for the first time so folks should Mark their calendars uh we'll be making more noise about that as well cool thanks to run for co-hosting this one thanks for

having me and I want to say a big thank you to the podcast team Rachel Henrik and Tanya and to our listeners thanks for listening