Privacy in Cosmos Live: Sergey Gorbunov (Axelar)-Axelar: Solving Interoperability across Blockchains
6 May 2022 · 18:01
Recorded live in Amsterdam at ZKValidator's Privacy in Cosmos event, Sergey Gorbunov of Axelar walks through how Axelar aims to solve interoperability across blockchains. He covers the challenges of building a robust cross-chain interoperability stack in a fragmented multi-chain ecosystem and how Axelar's architecture is designed to address them.
Speakers
Topics
Transcript
hey everyone uh let's welcome sergey gorbanov from axler for his talk all right [Applause] hey everyone how's it going awesome grab your seats if you want if not then that's fine uh so great to be here and uh thanks so much for inviting me um to talk about axler so first time in amsterdam and i was taking a taxi to the to the hotel and so i learned the most important thing about amsterdam and apparently is that you should not go to a coffee shop because they put interesting things in your coffee there and you should only
rely on starbucks following that the driver told me that he was born in amsterdam raised in amsterdam it's the happiest place in the world and he would never leave so now we know why awesome um so hope you had some good coffee let's get going um super excited to tell you about axler if you don't know and the one liner if you need to remember think about secure cross-chain communication on that note um let me quickly you know mention or introduce the team if you're not familiar um so we have a pretty uh amazing team super proud of a lot of the folks that are working with us the team comes with deep backgrounds and
cryptography distributed systems kind of consensus we designed and worked on many protocols over the years from you know outground to kind of standardization of crypto protocols like bls kind of hyperledger optimizations nuclear fusion and things like that so pretty deep uh team in the technology space and um super proud to to work with all the guys all right um i think on that note very briefly um i think this is all familiar to many of you but we know that the world has gone uh multi-chain over the last few years right i think you know if you look at the evolution of the ecosystem it all began with a couple
of foundational projects bitcoin ethereum early applications were built around those of course um and then we quickly realized that on their own those platforms could not scale right so over the years we saw an array of other platforms entering the market many of them optimized for unique technical capabilities or go after specific markets or use cases and i would say only over the last year or so the applications now embracing the multi-chain ecosystem and thinking about how do you leverage and build on top of these newer platforms and how do you leverage their technical capabilities or markets that they are targeting so lots of applications are going cross chain these years
now the unfortunate side of the side effect of all this is that the space continues to fragment and it continued to fragment over the last year or so and one of the reasons is can a lot of ad hoc solutions in particular bridging technologies have been rolled out uh to solve some of the interoperability issues that we've seen right um basically i think the the way to characterize a lot of the bridging tech aids mostly been centralized except for you know a couple of exceptions and so you see a lot of the hacks um over the years where you know a few nodes get corrupted um or just bad and poor poor security models uh the second problem with a lot of the technologies is they have limited uh what i call
pairwise of one to one connectivity right so again like the stacks have been designed and everything has been built to connect you know a and b which which is great but you know we're in a world in an ecosystem where we want to be able to connect you know many to many uh different ecosystems and continue to scale you know and support millions of chains and you have to kind of design the stack uh from the right approach so uh whenever you know i use one of the existing bridges or uh kind of think about the space in general you kind of look at this picture right and i don't know about you but i'm just hoping that i don't end up like on the on the bridge on the left right um so that's the state of the art awesome so what do developers actually
want sorry the developers want platforms not stylus right so um as a developer you wanna pick a platform where you can build the best application for your user experience while still being able to leverage and compose and interact with all other ecosystems okay and so that's what axle stack allows you to do is as a developer of your application on asset you can make the best decision for yourself where to go without having to think about you know losing liquidity or losing composability and so the axillary stack enables you to perform um secure cross chain messaging you know asset transfer contract calls and anything else you can think about the other big point that i want to
kind of mention is that at the very end of it i really don't think the users care about bridging technology or interoperability or too much what chain they're on okay as a user really what you have to do is you you know you have an asset you see an application you just go ahead and use it and so we're building the the stack with the user simplicity in mind to think about what are the right layers that you have to provide and build in order to enable simple one-click interactions across the ecosystem right as a user i should be able to go and use the application and i have to put trust in the application issuer and developer to build on the best and secure platform their application i have to put you know
a trust that they're using the right interoperability or bridging technologies but as a user you know all these things uh there's no way you can you can think about those things and so that decision has to be kind of uh relied on the developers to do this simplicity is one of the core things that we need to get to in order to go to the next level of adoption for the blockchain ecosystem and today it's just horrible and painful all right awesome so on a high level let me introduce you kind of to the axillary stack there are a couple of layers but let's start from um kind of the top going back to the premise that we want to start with we want to enable
applications to be built anywhere they want to be built right so you can go and build on ethereum on avalanche and cosmos on polka dot and um we'll help you uh communicate with all other ecosystems through a universal set of apis and sdks um that you can interact with you can think of it as an application you can call a message to a specific you know router or gateway which is a smart contract on the chain from there underneath it there is the axler surf transport layer and the gateway protocol that would serve the purpose of you know finalizing messages routing them executing them kind of delivering where they need to go and then returning the result back to
the application right so um underneath all of this the axle network itself is a decentralized proof-of-stake network so it's based on the cosmos sdk so you can you know anybody can join run as a validator participate in the consensus and have full security of proof-of-stake model uh back in the uh the transport layer itself all right so what are kind of some of the key ingredients of the axle network um there are a couple of big uh components and i want to kind of emphasize that everything has been designed with the goal in mind to really be able to connect millions of chains over the years right and so the
components are all reusable and they're all programmable so at the very core of it there's a tendermint consensus which you know all the functionality has been coded around it and so it serves us really well purpose in order to agree on the state of cross chain messages that we're processing um there is a layer of kind of finality gadgets which allows you to connect an arbitrary blockchain with as easy uh with few instructions essentially or a few commands on the network right so those finality gadgets you can think of it they can deal with probabilistic chains right they can deal with chains with instant finality um you just need to specify you know confirmation heights or basic parameters and then you can onboard the chain
there is a layer of kind of multi-party cryptography that's involved in it everything is pluggable you can replace the cryptography so you can use anything from multi-cigs like threshold signatures bls signatures you know you can use zero knowledge if you want and so that serves as a building block and a component as well through the network and on top of it there is a layer of programmability that allows anybody to go and kind of use all these building blocks run commands on the network in order to onboard a new ecosystem as easy as possible right so this is kind of at the core transport layer all these components can be merged together and composed uh to make interoperability scale all right awesome so yeah in terms of
the network itself we actually started to roll it out uh you know a couple of months ago uh it's still in the early i would say phases of the rollout but uh it's already onboarded you know like a dozen of chains or so um everything from cosmos based chains that can interact with ibc to various evm chains uh you know ethereum avalanche phantom moon beam um and so on and so forth and and like i said because the way the network is designed and the components decide it's pretty easy to actually keep on onboarding new chains and keep on adding more connections so kind of check out axler scan.io it has some some interesting graphics and kind of statistics about what we have processed today but it's still kind of early days of the rollout all right so i'll mention a couple
different functions you know on the on the network layer and one uh what i call is a universal asset transfer so the basic idea is the following whenever you compose in different ecosystems some of them speak very different languages today right so you have cosmos that speaks you know ibc ibc is not extended to other ecosystems yet so you potentially have to speak either a different message format or you have to translate one message into the other format right and so this is at least for now what we have done is kind of enable functionality to perform uh transfers you know from many to many different ecosystems right so from many uh cosmos chains to many evm chains and and vice versa and the uh the basic kind of core
premise of all this is a as more chains are added to the network you get very strong compounding and networking effects right so you're not con you're not fragmented liquidity you're not fragmenting connections every new connection that added automatically gets to benefit from all other previously interconnected ecosystems right so it's not a pairwise connectivity in that model um and underneath it you have this strong kind of translation properties where packets from let's say ibc can be translated into packets that that are readable by you know evm contracts and vice versa right so uh and the because the translation happens at the network layer it's all very optimized and it's all very cheap and it's all very effective and efficient so you can program these things as well
um you can um so on the gateways that i mentioned earlier you can actually call the gateway contracts in order to send tokens or one of the features that we have rolled out which you know seems to be very interesting for the community is to be able to get a deposit address where you can send a regular transaction to send your funds from one chain to another right so think about it this way in a lot of the bridging technology you have to use things like metamask or smart wallets in order to actually use them right that limits your user base you know to metamask or smart wallets which is you know 20 to 30 million um you know half of them from a ban and smart chain if you want to go beyond that and allow
your assets to be transferred through centralized exchanges right through dumb wallets and get like to hundreds of millions of users you can't require people to have metamask right like that's a very limited factor so what axl can do is you can call an api to get what we call as a deposit address and the deposit address is a function of from where you want to go to where you want to end up and what is the the destination address where you want to receive your funds right and this address is a regular address that can be uh computed to you to which a user can send funds from any wallet right from a centralized exchange from a dome exchange it's a regular transaction that's executed and the way the reason that it's enough is
because of the actual network layer once you create this deposit address you create sort of a path from a source to a destination right so once that path is created users can send an arbitrary transaction um you'd have to decode like arbitrary you know complicated payloads and smart contracts and so on and so forth so super excited about that feature gives you you know access to millions or hundreds of millions of users that were not previously available for bridging technologies in general awesome so the second you know big component of axler which we're rolling out now is what we'll call is general message passing right so the basic idea is that okay tokens are great but they're in some sense what they allow you to do is they allow you to move asset to the computation right you have programs that
are deployed on certain smart contracts you move in assets there to do things with general message passing you can go way beyond that and what i call what i can think of is you can start thinking about paradigms where computations can move to the assets right and state can move slowly across different blockchains so as opposed to having to move the tokens you can have functionality where the tokens or the assets are residing on a chain a they're interacted through very smart contracts and only state about those contracts or calls is then communicated to synchronize with other applications or other application logic that could uh could sit on different chains so this is on the high level how this
would work um high level diagram if you have a user you know a user would interact with what we call as a source chain application contract so let's say you know you're going from ethereum to avalanche you would have a contract on the source chain the user can send an arbitrary command to the contract that contract can do anything you know in a touring complete world that you can think of right you can swap tokens you can uh you know lock them in any shape and form when the message needs to be relayed to other network it uh the the application layer logic can call it to the axler gateway the actual gateway is simply you can think of it as a input and
output you know buffer or a queue to which you can read and write messages underneath all of this there is the actual decentralized proof-of-stake network that will confirm the messages help you process them relay them and put them on the destination gateways right on destination gateway from there you can call any other contract with any other payload whether or not you transfer in tokens or you just synchronize and state across of your application so you can do all of this and then the user can get their result and you know different wallets or the same wallet or depending how you execute the application so super excited about this uh you know i think kind of in the cosmos i think similar you know uh trends so think about it is through kind of interchange
accounts right that allow you to send transactions from uh one chain to another this is kind of going beyond that and going and interacting with evm chains and we're thinking about ways that actually the two can compose with one another which i think will be you know super super exciting um yeah so uh high level let's go beyond tokens let's enable turing completeness right for cross chain communication and that's what this allows us to do all right so yeah you can think about building arbitrary applications from you know super apps what i call which is i think super exciting uh category of projects we're starting to see in the crypto space where things like wallets are allowing users to do more and more
right um you know um purchasing viewing nfts kind of a trading going from one chain to another and all of that is going to be enabled through you know interoperability stacks and cross-chain communication um and i think this is definitely going to be an exciting category um that we're going to see in the coming years beyond that you can use your imagination to kind of think what to do with this general message passing functionality everything from nft transfers uh you know cross chain automated market makers gaming and so on and so forth and we're seeing some some early uh use cases and exciting stuff for for instance like a first cross chain nft marketplace that's been built by our community that allows
people to that have tokens on different chains to kind of purchase nfts that may be hosted somewhere else across the ecosystem right so kind of super super exciting use cases all right so i think i'll end it here there's a quick talk so if you want to follow us you know check out doc sign up with discord we're always there to answer any questions and i'll be hanging around and you know i can probably i don't know how much time we have but i can probably take a couple questions now at one minute all right one minute is good for 10 questions let's go quickly anybody all right
awesome well thanks everyone we'll see you around