New Ethereum talks, every Monday. The week's conference uploads by event, in your inbox.

Loading player…

Anoma: From VM to IM - TOKEN2049 Dubai 2024

TOKEN2049Wed, Oct 9, 2024, 12:00 AM

Transcript

thank you very much so today I'm going to very briefly talk about the move from VM to IM or from virtual machine to intent machine and before we start or like as a beginning let's quickly go through the evolution of protocols to kind of like recap how we got to where we are today and really in the beginning it all started with Bitcoin and Bitcoin like architectures right like when you think Bitcoin I'm also thinking like Litecoin zcash Monero you name it these are all fundamentally transaction Centric systems they have limited scripting capabilities so you can't build very complex applications but they allow you to build some applications and sort of they were really the forerunners here with things like colored coins um or things like the global Bitcoin Stock Exchange but again in a transaction Centric world there are limitations here and sort of we ended up in this virtual machine Centric world that we are in right now mostly due to the limitations that we found with scripting like with scriptable settlement in the Bitcoin World um and really this is the world we live in today around virtual machines ethereum Nia salano all of these systems are fundamentally virtual machine Centric or VM Centric and all of a sudden instead of having to build color coins we got e20s instead of just having the global Bitcoin Stock Exchange we managed to get amms so the apps became about an order of magnitude more expressive and about an order of magnitud easier to build and there's going to be the next wave which is IMS or intent machines and really we are moving towards intens Centric architectures and with anoma I'd like to tell you a little bit about sort of the very first design for fully generalized intent Centric architecture and I would posit here that um the same move that we saw when move from um sort of transaction Centric designs to Virtual Machine Centric designs we'll see about the same order of magnitude gain uh when we move from virtual machine Centric designs towards intent Centric designs so with that quick till theyr um in Bitcoin you really authorize transactions in ethereum you authorize execution traces you authorize how to perform specific steps in INT in anoma and in 10 10 Centric designs you authorize specific end States and like the states here are really arbitrary you can authorize arbitrary end States and the system can sort of figure out how to get you um how to achieve what you wanted from your intent um so yeah everyone talks about intents all the time and really most people when they talk of intents they mean limit orders and this is not incorrect limit orders happen to be a very special or specialized kind of intent but with anoma you get a fully generalized intent machine it's not specific to limit orders it's like anything you can express as some conditional State transition as an I want to move from State A to B that's an intent the intent doesn't really matter whether it represents a limit order so it represents a price or it may represent a vote in a dow it may represent a vote in a gitcoin dow funding round right like these are truly journalized intents so you can build all the specialized kind of intents on top of this um and many more things um a little bit of a sort of primer here on what's the difference actually or what does the virtual machine do versus what does the intent machine do and the VM really is it's an instruction set it's a program counter it's a bunch of different layers of memory um and importantly it runs program sequentially the best example we currently have of these kinds of systems are the ethereum virtual machine really this is the OG virtual machine but nowadays we also have like the salana uh virtual machine the svm or the virtual machine of near right there are many kinds of different virtual machines but fundamentally they always follow this model of imperative sequential program execution an IM on the other hand an intent machine takes a batch of intents and computes possible valid State Transitions and then According to some Criterion selects uh sort of what updates to apply to the system State and here really the criterions are either defined within the intents so that are defined by developers of applications um currently there are no generalized intent Mach maches yet um so the anoral resource machine is really the first generalized intent machine in existence by the way if you're interested there's specs. net that specs out the entire virtual machine or the entire intent machine um I think one really important point to highlight here is it is not that an intent machine replaces a virtual machine intent machines are just high level of abstractions that developers and users can interact with that sit and run on top of existing virtual machines so anoma fundamentally it's a new paradigm it's we're evolving the infrastructure we're moving away from uh transaction and virtual machine Centric design so what's an intent Centric Paradigm where applications as well so developers as well as users can leverage intents rather than leverage transactions under the hood and this is quite important because building um good execution environments for intent machine is it's it really matters um the other thing for Builders um with an normal you actually get fully generalized intents but there's a bunch of other things like decentralized counterpart Discovery distributed solving a lot of these things come for free effectively or fall out of a properly designed intent machine architecture and you also get a bunch of cool things like novel properties like information flow control and really this is about allowing users to decide what kind of data to reveal to the network because I think we're going to be moving to this world where a lot of the state doesn't won't live long term in this like Central globally or globally mutable state which is really the model we have but rather a lot of state will end up living on edge devices um and so information flow control is really all about how do users reveal certain parts of their state to the global Network in a what way um yeah and then lastly really this is um intent Centric designs allow users to more easily reason about the system because rather than signing a specific execution trace and like this op code gets to modify some State this op code gets to modify some other state users just sign over specific State changes which is much easier to understand sort of from an enduser perspective um so yeah anoma it's a universal intent machine if anyone ever asks you what anoma it's a universal intent machine um and it's it's important to understand anom a universal intent machine for theorum so Builders can write dabs um as in as intense instead of transactions and intense and deps written in a Noma can be ordered solved and settled anywhere this may mean they are settled on the ethereum main chain or they could be settled on some evm or non- evm rollup or even something like can I layer AVS this is really the important thing to understand is um intense can be settleable anywhere where the users actually want to settle them this is uh the security model is defined by the users so wherever they they can pick in their intents what security model that intent wants to get executed in or should get executed in um but this generalizes so nor is an intend machine not only for E theorum but could also be an intend machine for salana Cosmos near you name it really any sufficiently programmable virtual machine is kind of is going to be capable of running um a normaliz intent machine and this is I will speak a little bit more about this point but this is very important to me whenever you interact with systems you should be thinking on um is it an interface or is it an intermediary and aoma is an inter interface and it's not an intermediary and what does this actually mean intermediaries while sometimes valuable are actors in a network they are specific parties with which you engage they add they either charge fees or they add into security model they add complexity they add latency um so intermediaries really they are specific counterparties that you interact with and this could be a single key this could be a blockchain but it's intermediary you interact with um in the ethereum ecosystem actually one very good example is most Bridges right now are just intermediaries there are whether it's a multi sign um Bridge or a chain um Bridge they're generally counterparties which you must consider in your security model um in the real world actually banks are a great example of this banks are clearly intermediaries that you must use in order to access the financial system um and they do add to your latency to your security concerns right so think of this as intermediaries uh interfaces on the other hand are just protocols they are just open source code code they are freely copyable they're Deployable by other people um they're Deployable and forkable by yourself uh they're not specific parties that you interact with they're just standard definitions that everyone agrees on um in the real world tcpip perfect example of a protocol not an intermediary where I don't have to talk to a single Oracle server uh to access the internet I just use tcpip my own implementation in my own languages if I wanted to and I now can connect to other people that speak the same protocol so this is TCP is an interface um and anoma is the same way anoma is a protocol it's an interface for declarative intents imperative order and comput and storage semantics um it is just an abstraction if you don't like parts of it you can Fork it you can run it yourself uh and this is really important to understand there's no anoma chain to which you must send your intents um you can just send your if you in like if you use the normal protocol you can just settle an order and execute these intents on ethereum if you wanted to or wherever else you want deploy this protocol uh yeah so not enough people in cryp to do this but whenever you do please think are you interacting with an interface or an intermediary because that distinction really matters um so yeah if you want to join the discussion by the way here on intense um and anas Universal intent machine for ethereum uh please have a look this is a great post on E research um it's a bit lengthy you should read it but it takes like two hours um the last bit I'd like to talk about is scale free uh and anoma really here is scale free so anoma's architecture makes no reference to specific scaling Behavior because it is as local um as possible right and so it's a new paradigm in terms of what you can do with scaling where you get both local and Global scalability without losing interoperability and this is to to understand that if the three of if three of us are in a room we can use the anormal protocol locally between the three of us if we then want to like coordinate across the ocean we use different deployment of the normal protocol but like really the architecture makes no reference to this kind of scale it does not predefine the topology of the network um and this is really important when you think about this uh topology is defined by actual user behavior and so if three people want to like sit in a room and do some trading the topology should follow that actual physical behavior and this is what a Noma does um but at the same time if those three people leave they can also very easily roam into a global thing um and this is maybe here a very quick cool example which is from The Real World our phones act this way like when I travel to new country I don't have to buy a new phone because my phone can roam between different deployments of the wireless stack um and anoma enables exactly the same thing where applications can roam between different security models right like my application can now roam between I don't know the global anoma instance um as well as I don't know the New York anoma instance right like you can take uh we have a standard protocol definition and you can roam between all these different deployments um yeah so quick TDR uh we are clearly moving uh the movement has been from transaction Centric designs towards virtual machine virtual machine Centric designs towards intend machine Centric designs um VMS and IMS are not competitors they are very compatible and one Builds on top of the other um intend machines really offer a new paradigm um both in terms of infrastructure the builders as well as the users um and yeah an noral is universal int machine um it's Deployable in many places so you can deploy it to ethereum to salana to Cosmos or to any other Sovereign chain and this could even be like a chain run by national government um I nor the architecture the protocol doesn't care uh you can deploy it into whatever security model you'd like um yeah think of inter interfaces not intermediaries and really the Paradigm here is it's a scale-free architecture it's the topology is defined by user Behavior not by a network by not by protocol designers which I think not enough people really consider when building these architectures you want to allow your users to define the topology of how nodes connect to each other and like what the actual deployment is going to be like and you don't want to pre-specify this so yeah if you'd like this um again um hit up the uh anoral research topics it's a bunch of research papers that explain a lot of the underlying architecture you can also go to the research. net form and engage there um or yeah just go to the website thank you very much

Automatic transcript — names and jargon may be misspelled.