Decentralize Your Whole Stack With Walrus and Sui | Daniel Leavitt - Walrus/Sui
Ethereum Denver·Thu, Oct 9, 2025, 12:00 AM
Store savage cat pictures, cute dog memes, a crazy video or an entire website with Walrus' unique erasure coding system. Combined with the Sui blockchain for control plane operations, Walrus is the next generation decentralized blob storage network without requiring a custom built blockchain. With Sui and Walrus, developers can finally decentralize their entire stack without interacting with centralized actors and build truly censorship resistant dApps. 🚀 Get Ready for ETHDenver 2025! 🚀 We're already hard at work preparing for next year's biggest Web3 event! Keep your eyes peeled for more info on ETHDenver 2025—it’s going to be epic! 🌟
Transcript
[Music] all right hey everyone I hope you're all having a great beginning of the hackathon and the conference uh I'm Daniel I'm one of the devell engineers at theu Foundation I work very closely withu and walrus so today I'm going to be giving you guys a high overview of what s is what walrus is and how we're um having them work together to decentralize the internet okay so I'm going to talk about s first um and I'm going to bring up three ofu superpowers first is the object model uh one of the biggest difference between s and evm change is the way we represent assets on chain and the ownership of those assets uh as a developer it's absolutely crucial that you understand how these assets are represented onui and how you can um create these assets and manipulate them uh and then we have move move is the Smart contract language that we use to develop our smart contracts uh this will basically allow you to create assets on chain in the logic to manipulate these assets and then we have our bread and butter ptbs ptb stands for programmable transaction blocks um I'll go into detail about it later but it's a way to allow client side developers uh the power of a smart contract developer without any need of smart contract TR experience okay so onui the rule of thumb is that everything is an object when you deploy a smart contract it lives on chain as an immutable object and it is used to manipulate other objects on chain uh global resources such as liquidity pools uh marketplaces nft metadata those are typically stored on chain as shared objects a shared object can either be immutable or mutable and are is accessible by anyone on chain uh and then we have owned assets such as coins nfts all of these owned assets personally owned assets are represented as owned objects so an owned object sits directly in yourui account and only you as the owner of that object have the ability to access it and manipulate it um and and also objects can own objects as well you can have nested objects onui um that's kind of how a liquidity Pool Works a liquidity pool is a shared object that can have coins in it um as a nested object and it's important to note that be because owned objects can only be touched by that account uh you can paralyze these transactions which um one of the reasons whyu is so performant so the the main takeaway with the object model is we want our digital assets to behave like physical assets um so like let's say you're going to pay cash for a coffee you you want to pay give the Barista a few dollar bills each no nominated with its own value like let's say a $10 bill and a $5 bill they're all individual bills that have its own value and it's the same onu if I wanted to transfer youu or buy an nft I would transfer either one or a few objects let's say a s coin object where every object is nominated with a certain amount of site in that object uh and then another another example let's say like your your buddy wants to borrow your Lambo take it for a drive there's two things you need to give um your friend you need to give them the actual car let them know where to find it like in the garage and you have to give them the keys it's keys are a physical object that allow you to operate the car so it's the same let's say you're a founder of a um a DEX and you want your Founders or your devs to have certain um abilities to modify the configs you have to Mint them in object object that their s account owns and ownership of that object allows them to modify the configs of that protocol whatever that is and the reason we represent asset owner asset ownership this way is because it's really easy to understand because we deal with physical objects all the time so it makes sense to have your digital assets kind of behave the same way and it makes everything interoperable by default so when you deploy um if you deploy or deploy a contract here contract here each with different types of objects these objects are compatible by default meaning that anyone can build with any of the objects there's no need for like wrapper contracts or anything like that okay so theu object model that's the mindset you need to have and you need to understand When developing onui and then we have move the smart contract language um so I'm going to show you how this site object model is then translated into the code so we have this buy function here and this buy function will take in a coin so let's say you as the function caller own this coin object you pass it into this function when you're calling it and that will relinquish your ownership of the coin so at this point when the function is being executed the function has complete control of this coin object you no longer own it the only way you would own it after the function is if it's given back to you um so yeah so the coin would probably be sent to whoever owns a contract or whatever and then in return you're given a car title this car title object is then sent to your account and it represents ownership of this car title and then let's say you have this car title and you want to register your car so instead of giving relinquishing ownership of the of the car title you want to just prove that you own it you want to just show the function that like hey I own this specific car title so you do that by passing in a immutable reference to it so at this point you're not actually transferring the car title it's still always going to be in your account the function just has the ability to read the data that's in that car title and prove that you own it um and then there's like a fee which is like the same as the other coin example and then in return you get the car registration yeah okay and one of the main pillars when designing move was security security by default we wanted a lot of we wanted to avoid as much of the pitfalls as we've seen in the blockchain industry as possible um so duplication double spending and destruction are all just a few examples of what's not possible onui uh like if you write contracts if you if any of you run any of this code it just it won't compile so you just won't physically be able to uh publish any contracts with these kind of errors in it and this again is just uh using the pr ensuring that digital assets behave like physical ones like you wouldn't be able to double spend a dollar or such things okay so we have theu object model that's how we represent assets uh the move is the API layer it's the layer where you can create these custom types these custom assets as well as the logic for manipulating and possibly deleting these objects and then we have ptbs ptbs is a framework that allows you to um interact with all of the deployed objects onui as well as um create new ones and Destroy them and stuff like that so A ptb it's basically a batch of operations you can batch up to over a thousand operations into a single ptb and again this um or this will greatly reduce the cost of gas because executing operations together is always going to be cheaper than separately uh and then these oper are executed on chain automically so it's very similar to how you would see uh a smart a smart contract function operate like everything in the function is atomic if something uh goes wrong if something throws an error the whole transaction will revert and it's the same with these ptbs so it basically allows a client side um developer like we we offer languages uh sdks in typescript Python rust um most of the common languages and and so it gives a developer with no smart contract experience the ability to interact with objects onui without having any smart contract experience and um so the most uh major use case that we've seen so far is just reducing the need for new smart contract rappers um if you want to interact with two different smart contracts or a multiple protocols on the in the same atomic transaction this is can be done by default onu uh so I'm going to go to this example real quick okay so this is a DEX aggregator onui so uh when you want to perform a swap this will aggregate all of the different dexes onui and find you the most optimal SM optimal swap so let's say if I have one eth I want to swap so it's going to go ahead and find the most optimal uh route for you and you can see that the most optimal route in this case and it's going to keep updating as I talk but it splits the route into multiple paths and then each path has a chain of swaps so this is all calculated on the client side and if I were to actually connect my wallet and Swap this this would all be executed on the client's side with um I'm assuming like a typescript SDK no smart contract ex wrapper like functions or anything needed so this is just like one pretty uh like default or basic use case of like how how powerful a ptb can be okay um so just to summarize we have theu object modeled we represent assets on chain using objects and objects can be shared or individually owned and then we have the move layer which is how you define these new assets how you define the logic for interacting with these assets and and then we have ptbs and which is the way any developer a smart contract developer front-end developer can start building onu start building products onui and then I have a a fourth secret superpower which is um you you user experience so um I've kind of showed you like how the developer experience onu can be but we also have a really good user experience so we think we our goal is and everyone's goal but our goal is to adopt the mass users of the internet you know there's like millions of crypto users but there's billions of users on the internet um and we see uh like keys and like wallets as a current blocker there like most people they forget their Netflix password their banking passwords like these are important pieces of information that users I mean I'm I'm also one of these people that every once in while forget a password and I have to like recover it or something and we think that this is a major blocker for the mass adoption of crypto so we want to make we have the technology and we want to meet them where the users are and that's using typical like ooth U methods such as like sign in with Google sign in with Facebook sign in with apple we want to allow users to still to use what they're familiar with but then have the power of the blockchain behind the scenes so that's why we've used um zero knowledge proofs to allow you to create a s account using just like a Gmail account and you can see this in a lot of our products today and if you're interested in learning more you can come by our booth and we'll show you more about that okay um so now on that's about site and now let's talk about walrus so walrus is a decentralized storage Network it was built by the same team that built theu blockchain and it uses uhu as a coordination layer and there's a few reasons why we wanted to use S as part of the coordination layer umu is very performant so because s is so fast we were able to handle the metadata and the payments very fast on walrus so walrus is pretty fast due to this um and then the core engineering team didn't have to worry about any of the coordination of the metadata or handle payments or anything so they were able to solely focus on the data aspect of the network and the way we see it and the way the reason why we pair them together when we talk about decentralizing the internet is we seeu as the global coordination layer the compute layer if you will so um it's really fast it's can handle a lot of demand there's the devx and the ux are both really great and um we have a lot of composability with the object model paired with the ptbs and then we see walrus as the global data layer so no matter what when most internet apps and um use cases still deal with a lot of data so we want to make sure that you can deal with data in a good decentralized manner so differently from other networks we have a pretty we use a novel 2D encoding algorithm for storing and the data and distributing it throughout the network most other networks they have full replication which means if you upload a gigabyte every single node in that nwor has to also hold that same gigabyte um so this allow this requires a lot more performance which makes everything cost a lot more so on on walrus we only require with our encoding algorithm we only have a 4 to 5x U replication Factor so no matter how big um of a piece of data you want to store or how many nodes are in the network we will only store 4 to 5x or we only replicate your data 4 to 5X throughout the network um and we do this by split Distributing your data into shards that are distributed throughout the network um and because of this low replication it actually makes W very scalable on other networks when you add nodes you're actually adding um more storage requirements because every node has to replicate the data but when you add nodes on walrus you're actually increasing the performance and increasing the capacity um and even though we only store replicate the data 4 to 5x we're also very resilient with onethird of the nodes down you would still be able to write new data to the network and 2third of the nodes can be down and you can still retrieve your data so um even though we have a low replication it does not um take a cost at the resiliency it's actually very resilient and because we use S as a coordination layer that means that data is now a programmable asset set on chain so you can create a Marketplace onui for these for this data or for certain um pieces of data for example and uh you can use Smart contracts to manage the life cycle of data as well as like um I mean the options are Limitless really uh and just to reiterate walrus is a delegated proof estake Network so um if you're interested you can reach out to us if you're um wanting to provide some storage or anything um but yeah so the main thing is that it's it's cost efficient but it's also very reliable okay and I wanted to bring up uh very quickly this product that we have on walrus it's called walrus sites it allows you to um deploy static websites to walrus the network and um access them via your browser so now we have daps and these daps are usually hosted on some sense centralized server which means that um these decentralized apps aren't totally decentralized because at any moment if the whoever ran the server wanted to they could close out your website um and then you'd be kind of screwed so we made it so that's can that that's not possible anymore or that's not possible on walrus so if you host a site on walrus no one else can take it down unless the nodes as a unit agree that your your service shouldn't be out there if it's a legal or something um but yeah so this is one product that we have and it's just the tip of the iceberg we'll be uh launching walrus mayet very soon like uh within a week or so so keep an eye out and uh yeah keep an eye out okay yeah and if you're interested in learning more we can find our The Walrus landing page at walrus doxyz and then if you're interested more on the technical side you can read the white paper at walor uh at the wallor white paper Q code here and if you're at all interested onu or walrus or how they pair together if you're looking to for some ideas to build you can come by our booth right over there to talk to us uh we'd love to talk to you all about this even more all right well thank you so much for uh giving me your guys' time and listening and I hope you guys are interested and uh yeah looking forward to talking to you all thank you
Automatic transcript — names and jargon may be misspelled.