The Importance of Chain Signatures & Atomicity
13 Aug 2024 · 53:52
The Rollup examines Chain Signatures, a project from Proximity built on the NEAR ecosystem that lets smart contracts sign transactions across multiple blockchains. The discussion covers atomicity, the guarantee that cross-chain actions either complete fully or not at all, and how Proximity's decentralized multi-party computation network splits a master key among independent operators for security. It also touches on chain abstraction and account aggregation as approaches to simplifying multi-chain application development.
Topics
Transcript
GM what's going on guys welcome to the rollup and today's episode is about chain signatures this is a fascinating new primitive it just went live on near namet and today we're chatting with Kendall Cole who is leading the charge in designing these chain signatures they enable Omni chain use cases for defi they also open up use cases for Atomic transactions that originate on say Bitcoin or ethereum or Dogecoin they do interact with the near blockchain but the user never has to know that they have anything to do with near they continue using their native asset on their native chain hope you guys enjoyed
this one it really is a very cool new primitive before we get into it a word from our sponsors sit back enjoy the show Manel is a layer to blockchain with one of the biggest onchain treasuries in all of crypto and they have a 100 day campaign called metamorphosis live now what this is is it is a campaign for their liquid staked eth token M eth as well as their upcoming liquid reaking token CM where you can utilize this token on the mantle Network in a variety of different apps some of your favorite reaking protocols and defi protocols and earn yields in the form of powder which will eventually be turning into a governance token Mantle's been around
for a while we like them because they use their own form of Ian da uh they have a good ecosystem and they're growing so check out this 100 day metamorphosis campaign and hope you guys enjoy the rest of this video what is going on guys welcome to the rollup uh we have another episode today with Kendall uh Kendall is working on proximity uh we're going to be digging into that with all of its chain abstraction ties uh another uh entity out of the near Foundation I think we'll get into a little bit about Kendall's background uh and uh and the progress out of that um and yeah Kendall without further Ado I'll let you uh kind of introduce yourself and uh introduce
proximity yeah thanks for having me on Robbie um excited to excited to jam uh yeah so my name is Kendall I'm a co-founder of a company called proximity so we were set up by some early near core team contributors about three years ago uh originally to focus on building out the defi ecosystem prer and for the last eight months or so we've been really focused on the go to market and kind of product Evolution for our chain attraction initiatives so excited to talk about uh in particular our product called chain signatures today um and yeah kind of dive into that awesome man well uh yeah I mean near did take like a really like uh honed in perspective uh to chain abstraction and so you guys are playing a big piece of that uh I'm
curious from from your perspective like uh actually just to kind of like set the scene here I I was at the polygon's aggregation day in Brussels and I heard Jordy kind of lay out this like mental model that she that that he has for how he's thinking about chain abstraction and I I've kind of adopted it uh because I think it's pretty accurate at least how I think about things I'm curious how you think about things too so basically we have uh we were talking about the difference of async and synchronous interop uh and then also in the context of aggregation and he basically laid out this mental model where at the base level we have all of these async interoperability uh features uh and messaging at different latencies basically you know trying to figure out
if we can lock State a lot of async mechanisms to to make things work cross chain uh and then on top of that we have these uh like aggregation shelling points if you will that kind of sync everything up we have synchronous interop on top of asynchronous and then chain abstraction is this idea that kind of like once we have this aggregated perspective of the world we kind of abstract way that for the end user and then the end user just has like a one chain view of the world and when they're interacting with the chain it kind of just looks abstracted away they don't really realize maybe all the different blockchains that they're interacting with unless they choose to opt into like some deeper insights uh they kind of have like a one view one chain uh end
user perspective of how they're interacting with the chain so I'm curious at a high level like what is your mental model if you kind of agree or disagree uh with that mental model I'm curious about your mental model and then we'll get into you know how some of this works uh especially with regards to chain signatures which you guys are pioneering yeah it's a great question uh I think that mental model is is is is useful uh I think the only thing I would maybe add or or sort of change is that rather than kind of breaking things down in terms of like asynchronous kind of communication and synchronous communication we the main the main thing we think about is atomicity like the I think the most important the most important interaction you have to try to preserve when especially like when abstracting the chain or dealing with
multiple chains is like an atomic user action or developer action right it's like okay I want to especially like a swap is the easiest thing right it's like I want to swap uh usdc on ethereum for salana on Soul um you know you basically you're gonna have to send the usdc somewhere and you're gonna have to receive the salana tokens and you're dealing with two different blockchains who have like very different environments a lot of assumptions a lot of different roll back conditions whatever and so like the most important thing that's preserved is the fact that if that usdc is sent somewhere from one user that same user has to receive salana on the other side uh and if for whatever reason one of those parts fails then like the whole thing needs to roll back um and so I think that's like our whole goal and it comes a lot of like
the things we're designing is making sure that actions are are able to be Atomic uh and able to be kind of reversed so that that's like the one technical thing I would sort of add in there in the mental model um generally the way we approach it I would say is starting more from like the user or the developer perspective for chain abstraction I think you know like you said the idea of the user to the user it doesn't really matter well or rather like the the chain they're interacting with is like merely a piece of the information of the interaction it either might be relevant it might not be relevant if it is relevant then it should be relevant only to like okay I you know I'm acquiring or interacting with this particular thing in this chain and that's relevant because uh I this it
only exists on this chain or like I I want to use a specific version of a it's like the context is very like dependent on what it is the user doing so I kind of see chain abstraction as like uh it you may not even need to know a chain being used at all but you might if you do know chains being used at used at all then like the experience should be as fluid and seamless between chains as possible or as practical um and that's kind of like a good way to think about chain abstraction on the user side and then the developer side it's it's basically uh a if I want to create an application that spans multiple chains and is like purely cross chain I can do that with as simple and like consistent apis as possible and then and then and
maybe even more importantly is if I want I can actually design my protocol in a chain agnostic way where I can build like a D5 product that can actually interact with any asset on any chain that either exists today might exist in the future with minimal changes or at least like a you know pretty like low weight kind of uh consistent aggregation like integration sort of Stack um so that's kind of how we approach it awesome and and with atomicity I think that's a perfect uh like use case or or kind of like North Star that a lot of these interoperability projects are trying to enable a lot of the defi applications are are trying trying to harness and get access to this atomicity so that they can provide that multi-chain experience that is simp simply fluid and seamless so I'm I'm
curious you know let let's kind of get into it uh you guys are approaching this from chain signatures first off you know what are chain signatures and then we'll we'll let that lead into how that helps to enable atomicity yeah absolutely so uh the simplest way to think of it is chain signatures enable Smart contracts to sign transactions which basically means that a smart contract now has public or a set of public Keys the way that we enable that is through uh a decentralized NPC Network so basically what we're doing and it's going to be a process but we're setting up uh a network of NPC operators that are unrelated entities uh eventually will be actually be kind of like the you know it'll be permissionless to join the network and it'll be permission to leave the network um and this network of NPC
operators they basically hold a Shard of a bunch of like of a key they have like a Shard of sort of a master public key and then they basically listen to near initially near smart contracts and they listen to request to sign a given payload when they get that payload they take in that payload they take in a key derivation path that's also passed in as part of kind of like the the contract call to to sign the transaction um and then they construct a unique key us it like using that account that that smart contract that that they're signing for plus the derivation path and then they take that unique key that only this kind of account or smart contract can sign for and they sign that payload and return that back on shck so if effectively what that leads to is like this near counter smart contract can uh
sign any sort of payload any sort of transaction for any chain uh even using different signature schemes so we're launching at ecdsa but we'll soon add support for EDSA to cover pretty much every blockchain out there um and they're able to do that in kind of a unique way that only their sort of contracts can can do it very cool and and so I can kind of start to see the pieces forming as to like how this will enable some Atomic composability before before we get there I do have some questions about like kind of the the nature of this like public key cryptography system and how we can like securely safely sign these transactions uh without really a human interaction being a part of that so my small brain like normal perspective on this is
normally like I have a private key I understand that my private key is essentially my seed phrase it's like the series of words that translates to a a private key um and then I can use this as like the key to unlock my wallet and then sign a transaction my public key uh is then you kind of responsible for this transaction it's publicly available on the blockchain in the form of my wallet address so I can kind of use my private key uh to initiate transactions from my public key now you mentioned that like the the nodes in this network um and essentially the smart
contracts like when when a smart contract is on the blockchain now it has a public address we can see it on the blockchain we can see the ins in the outs from this address this public key and I'm using address and public key pretty much interchangeably here yeah and and so I guess it's the private key part that I'm like that I want to double click on you know normally my understanding is that these smart contract addresses don't have a private key because they're not signing transactions so how are we able to construct you mentioned it's like through this derivation path I'm curious like what is kind of like the the workflow of this derivation path to be to be created and when when we do create this is is this
pretty much creating a private key for these for these smart contracts maybe you can kind of demystify like this process of of actually signing how this how the smart contract goes about signing a transaction yeah absolutely so the the first is basically you uh you you organize the group of okay like this is going to be the group of the NPC operators this will be done through um a pretty decentralized process that will reveal a bit later initially it's going to launch in kind of a proof of authority B so let's say you start with like 15 of these operators like they what they do is they basically run a process to construct a master public key out of a key Shard that they each hold so together if a basically a critical
mass of them like let's say two two-thirds of them um agree to sign something with their key Shard using this uh we use this type of uh NPC cryptography called kite Sith uh so using that kitei protocol they can basically construct a valid signature given like a piece of data that they want to sign and use signing with their keysh and then passing that around a couple of times they construct the signature for this um yeah this like Master public key and so you don't need all of the nodes in this network to sign you just need two-thirds of them yeah which and that's like a very you can it's actually configurable as to like what the threshold is um but uh generally you want it to be a majority but you want to have some room in case nodes are offline or unable to sign or
you know malicious uh so it's you know yeah two-thirds is around is usually what what we see uh teams doing this settle on okay and and so I guess this is still a bit different from like a private key where I have the entire private key I use that to sign a transaction are these uh the nodes in this network uh I guess what is the difference between these key shards and and a traditional public uh private key yeah uh the biggest difference is that uh each key Shard alone is kind of useless but uh key shards sort of together without having to share the key Shard so you basically like I signed a message or like I signed something using my key Shard you signed something using your key Shard we don't know the private that
key shard in like I don't know your keyshar you don't know mine but we can combine like if we made it a two of three it's like us two and and say Andy you know if he was here and we're two of three and like you and I sign with our key Shard even if he doesn't we can basically combine those those messages using using this function to come up with like a valid signature for the the sort of um key that we basically split between the three of us when we first did this setup process but I have no idea what yours is you don't know what mine is neither of us know what Andy's is uh and so that's what's cool here is that like in order to compromise the system you actually have to go and compromise like each of these individual
groups and get to that threshold and so the less related these parties are and the less like you know the more difficult or the like there's a lot of factors that go into like how you sort of you know prevent collusion and things like that that we can get into but uh yeah that's how the system works awesome okay and I I think that makes sense from like a m the NPC multi-party computation combining these Keys uh without each party kind of like knowing who the other one is or needing to know the key itself um and so you know once these these uh nodes in the network come come together they decide okay want to sign this transaction you know maybe that has some manual intervention or it's done totally automatically how does these smart contracts that can sign transaction how
does that help to enable Adam Miss yeah that's a great question well first just to just so we complete the kind of cycle of how this works so uh let's say we've set up the network you know we have these 15 operators who have created this master public key um so what they then do is they listen to a special smart contract on the near Network that we will even turn into kind of a native transaction type that's basically requesting a signature um so a smart contract like every smart contract on near is also a near account there's like not really much differentiation it's basically like a near account can either have a smart contract on it or not that's kind of what determines whether it is an account a contract or not so uh this near account requests like calls this this function which it does involve
if it's a smart contract it doesn't have to be signed by its own private key but if it's from a near account like a a end user account it will be so this this function is called passes in that sign sort of payload to be signed they also pass in that derivation path and then what the what the NBC network does is it first it sees that that that signature request has come in and then it basically runs two derivation functions first it takes the near account and runs a derivation function using the master public key to come up with like a new public key that this that only this account can sign for uh then if the user does pass in that derivation path it'll then like basically manipulate this public key to come up with like another new public key and the reason for that
derivation path is this allows a user or a contract to to basically manage any number of accounts on any number of different blockchains right so we have Smart contracts that want to have millions of accounts that they're sort of managing uh and so they need this derivation P um so basically like yeah this these two derivation functions are run now the NPC operator Network's like okay this is the public key we're going to use to sign uh this payload that we're given which like let's say it's a transaction on on bitcoin so they'll then use that public key sign that payload and then they basically pass back to the near block chain this like valid signed uh transaction that can then be used by the user or the smart contract to actually send a transaction on the Bitcoin blockchain that's valid and so basically the the outcome of all
of this is it means that a smart contract now is able to custody assets on any chain basically any chain that exists or even will exist um because it's it's basically just this like all we're supporting is the low-level signing scheme so as long as the uh NPC network is is willing and able to sign using the signature scheme of the chain that you are trying to sign for then you're able to you know you're able to construct this valid signature and ultimately then send a transaction on that chain so now getting to the point about or any any questions there before I talk about adamis City yeah I guess like one question is that you know when we think about these in terms of you know a certain subset of the entire uh nodes in the network have to sign uh in
order for it to be valid like it sounds a lot like a multisig I'm curious if there's like another way to think about it or look at it in terms of like the the security the economic security or like the trust assumptions that are inherited you know when when we're looking at the nodes and the network is is that like the right way to think about it or is there some other security like metrics that are going on here that help to secure this NPC Network yeah that's a great question so um I mean like there are multiple signatures so I think like yeah you could look at this and be like this is a multi- I think the the the biggest difference is going to be like the way that you're sort of securing it so I think as like a a good Northstar of like there are a few teams
who are I think doing a pretty good job of this pattern so like threshold Network you know with their tbtc product they use pretty much the same pattern um the the big thing that they have that's a part of this is like each of those potential signers has to be like staking some of this token uh and then they basically rotate who's in the active set like over some kind of like defined epic um and that adds like it makes it a little bit harder to kind of compromise the system but like you could also you know probably fairly accurately turn that a multi um so you know I wouldn't say that like this is like not a multisig in a sense that like you do have these multiple signatures coming from these like disparate parties um but the what's going to make it secure is
like how do you choose who's in that set how often are you able to rotate the Set uh are there penalties or rewards I mean there's different views on slashing is like some slashing could be like you never get any future rewards some slash could be like you have to stake something and then you lose that and you give up future rewards a lot of that depends like the system and what you're custody um so uh that's I do think that is like the critical part of the security of the system and then there's a a not new but I think invogue primitive which is the trusted execution environment uh which you know potentially allows you to uh you know uh verify that the code both the code and inputs that are being like run against the code uh are valid and you know like
signed by the the hardware key of U of of some type of provide like Hardware provider so I think think the best way to think about security of these systems is like you want to you basically want to Encompass multiple different elements ideally you have some sort of uh permissionless way for people to join this network and to verify who's joining uh ideally you have uh some type of economic stake whether that's rewards future rewards uh actual stake that can be slashed whatever it is uh and then ideally you have uh you know some type of cryptographic uh way to determine bad behavior and then ALS and then ideally even prevent bad behavior and so for our system our aim is to have all like
basically all three of those elements encompassed uh so our our validators will be heavily incentivized to participate uh in like in a in a in a correct way and the good thing is like what we do is every single request and every single response orig like is on the near blockchain so every single signature request should start on the near blockchain every single signature response will be returned to your blockchain what this gives us is like a perfect audit log of the behavior of the system so one thing we would be able to do is if say you are using this system to custody Bitcoin and for whatever reason uh critical majority of the operators are able to collude offchain and basically sign to take your Bitcoin well you can actually prove using a like
client that we have on on near for for Bitcoin that a signature happened on bitcoin from your account and there was not a predated predating uh request for that signature or even just a request at all because that request comes from your private key so like it can't even be forged at any time and then you'd be able to well either Sue slash uh do like any number of sort of uh ways to kind of like hold these these counterparties responsible for that uh for that invalid signature so um yeah the idea here is basically the like this defense defense in depth strategy where we we will Encompass you know a lot of these different sort of components to try to make this as robust of a system as possible coent is solving the longterm data availability problem where a lot of the
data availability providers today in the Moder space when you post data to them they actually only hold that data for about 12 to 16 days and then it's basically they can go into archive note or often times it's just kind of put away into the abyss and what coill trying to do is build this long-term data availability solution which can plug into some of these modular data availability providers and provide this longer term Perpetual data solution so what we try to think of this as is when you post transaction data onto Celestial or Veil or any of these modate da Solutions or even ethereum coal is able to provide a longterm data storage and data availability platform for that data
after the time period blockchains are Billboards not databases and you know we need these providers in the space to be able to kind of hold on to the longterm data that is provided from these providers and these blockchain State this is where coent comes in they just had a nice Rebrand check them out on Twitter as well as the website thank you for being here hope you enjoy the rest of the show yeah and and to to your point uh these Economic Security not just economic but these security systems are combined uh and and aggregated and so it's not like uh you know you can only if you attack just one piece of the system you get access to all of it no you have to kind of break you mentioned
like three plus social consensus if you sue so kind of like four total systems you have to break all of them in order to kind of like get access and manipulate the system uh against the rules um so it's an and security additive system rather than just an or system that you can only break one of them I think that makes a lot of sense um and then you also started to mention how like you know these signatures uh originate on the near blockchain and then they end up returning to the to the near blockchain and so I think this will lead into atomicity and how like these signatures kind of like permeate through the rest of the chains um but kind of walk us through like one life cycle if you will of a signature
like it originates on near what happens in the origination process and then kind of where does it go how does it get how do atomic transactions happen with the signature and then ultimately it returns back to to the near blockchain yeah great question so the yeah uh basically the life cycle is signature is requested so this smart contract on near is called with the request for the signature NBC operators construct the signature they each use their key Shard to sign the signature create a valid sort of like complete signature for that Master public key then they return it back to the near blockchain so that'll usually happen within a few seconds because like we basically allow for this kind of like async a we type of process on the near blockchain where it's like okay request comes in contract's basically waiting
for a response response is finally returned it resolves and so the the user can then or whoever it is can basically receive that signature construct a valid transaction for whatever chain they want to send it to and then send it to like either RPC or like hit like a you know a validator or minor or whatever directly in order to get included in a block on that destination ch um so we can talk into like how that process will will like play out in practice but a lot of it depends on the use case um as for how or go go for no no I I mean I was going to ask about a particular use case because you gave me kind of like I If we're sending these requests or signatures directly to a minor or a builder perhaps for inclusion you know that that's kind of like a again like an
invogue type of use case that I think is in available now or people are thinking about like how do I ensure inclusion of my particular transaction and and maybe even like ensure execution of the order of this transaction maybe I want at the top of the block or you know sandwich or something like that and so one of the use cas that I'm I'm thinking about is like is this something where we could almost use near as like a like a precom system sending some inclusion to for the inclusion of you know some other chain that gets originated and then validated on near or is that use case kind of out of scope what are what are some of the use cases that you're thinking about are most practical for this system yeah that's a good question I'd have to think
more about uh and like read a bit more about like the current sort of uh you know proposed structure for pre- confirmations to see it whether not that sort of valid I think like the the the important thing is you still need to get this to the proposers uh so like this this system designed to help sign something to then be like given to propos like sign a hash of a transaction that can then be included in like a complete transaction body and sent to proposers um so the use cases were mainly I think and getting kind of into that atomicity idea is like so um if you want to basically move like handle a trade between two different blockchains ideally you want to have like the ability to land transactions on both those blockchains in a coordinated way
like whether it's synchronized coordinated you know whatever it is you just you want to know that the transactions are going to land on both of those chains um and that's what this system gives you is like you can have one smart contract in this case on near they can land transactions on two or three or 10 or however many chains and it can do it can land those transactions in whatever order um and so the like when we think about atomicity like actually one of the ways that I think is the most radical of what a lot of our systems are designed for using this is like uh you kind of can go away from thinking about uh trading like assets on a given chain and you can start thinking about trading public keys because like I can basically give you the right to sign
for my public key um and if I do that you can effectively you have control over all of the assets that are in that account um so a couple of the teams we have we are built using this system to build like a multi-chain decks or multi-chain lending uh the way they're actually thinking of it is they're thinking about oh we're going to like use public Keys as collateral for Lending protocols and we're going to use public Keys as like the unit it in which like like basically the one order like you if you want to like trade something you'll create a new public key send assets to that public key and that'll basically be your order and then you'll offer to sell that whole publicy to maybe me um and so like one way to do this that's you know feels to users exactly like their experiences today is
you'll only deposit Bitcoin into that public key so it'll be like you're selling one Bitcoin it'll basically be like that's a one Bitcoin order and then I can come with maybe usdc on salana assuming that you're open to that and I can deposit like I don't know let's say today $50,000 worth of uh usdc on on salana for and and then we can agree to basically swap the right to use each other's public keys and the cool thing is like when I when I talk about Atomic is that that part like the control of the public key because that's actually governed by in this case this near system that swap will happen on near and so we'll actually settle that transaction automically meaning that like you will always be able to sign for that account I will always be able to sign for for your account like that that
that swap will happen automically and on near in about 1.2 seconds and like what one of the cool sort of uh Downstream effects of this is like you can actually be trading automically uh these assets on much slower chains in at at near block time now if you want to move those assets like to a different account to Cold Storage whatever obviously you're gonna have to be down by the block time of whatever you know wherever that asset is living uh but at least that like control part will happen at the near block time at time and so that same pattern can be recreated for a lot of different use cases uh that actually like and it's cool because like it doesn't uh one of the big challenges in Building interoperable Systems that as a lot of these amazing teams who have been taking on this great challenge we'll
talk about is that blockchains have extremely different assumptions right they have different uh they have different confirmation times they have different uh finality times they have different concepts of what finality even means like between proof of work proof of stake like finality doesn't even mean the same thing um and they have different rules about like roll backs gas all those kind of things and so it's really really complex to build systems between all these different chains but by by instead kind of moving things to this like sort of um public key level and and focusing on supporting signature schemes and really there's two that just about every blockchain uses which is like ecdsa for evm chains most of Bitcoin uh Cosmos chains Etc and EDSA for near salana ton and a few others um
we we get coverage of pretty much everything that's out there so I think it's really really freaking cool um and I wanted to get into um essentially like just kind of outlining how this is working um we have a Bitcoin order on the Bitcoin blockchain for one Bitcoin and then we have someone paying for that Bitcoin on the salana blockchain and all of that is settled on near did I did I get that that's exactly right that's exactly right as wacky as that sounds yeah yeah and so like when if we're thinking about this from the end user perspective are they interacting with the near blockchain at all or is it just like the buyer is on on salana the
seller of the Bitcoin is on bitcoin and they don't really have to they don't have to touch the near blockchain just kind of helps orchestrate this transfer behind the scenes yeah it's a good question so um our goal is uh uh is that users will never necessarily need to explicitly interact with the near blockchain as far as they are concerned uh in the case where all they're looking to do is go from like chain a to chain B and neither of those chains are near um so there's a couple ways we can do this right now there does need to be a near transaction from both of these groups basically like authorizing at least a signature so I think only one of them will actually need to interact with near
probably the taker like a maker can just sign a message and that can be like we can verify that that came from them on the near blockchain um but someone will have to kind of like settle that and like send that to to the near smart contract um so uh there's a couple ways that that can be handled uh right now we're basically uh working on a really cool abstraction pattern that will let you use like message signing on any chain to basic to effectively send a transaction on near like you'll basically just be signing kind of like order details um and then you'll be able to like send that sign message on near and like using some other kind of uh account abstraction features that we have that are native to near you'll be able to control a near account uh and and effectively send that transaction um
because the the vision for the user experience here is like okay you you add the minimum number of like new wallets or new contexts to the user Journey so if you're going from Bitcoin to salana ideally you shouldn't even have you should be able to do that all in one wallet like regardless of you know what your wallet is built to custody uh ideally like you should you start in one wallet you end in one wallet um you you you move from Bitcoin to Sal great um there are some ways we can enable that I think the downside is like ultimately the wallet providers have to be the ones who are going to be showing balances in the wallet so like if you want that part of the user experience consistent then like you have to use a wallet that supports the chains that you want to uh
to interact with um but um yeah I mean another way we can do it too is like we we have a lot of teams building specifically Bitcoin applications and so the ux for them it's it's very clear what it has to be you only use your existing Bitcoin wallet you never have to directly acquire near you never have to directly interact with the near blockchain even if in the background near is enabling the The Experience pattern that you have um so it's very use case specific but I would say that like the teams that we're going to be launching over the next uh few weeks and months you'll see that they are actually preserving this sort of like ux kind of we see as like a hard line of users do not need to get new wallets in order to to interact with this system they only
have to use the wallets they starting with couple questions uh that are that are related like how much impact does this have on on existing wallets and then second question is how much impact does this have on like the base level networks you know is this going to require in our case of Bitcoin to salana and back like is that going to require any changes to the Bitcoin Network any changes to the Solana Network or can they kind of like continue to operate like as they are operating without any changes needed you know new OP codes any any changes to the underlying base layer yeah great question so fortunately answer is a hard no they do not need to make any changes and it actually even goes a little bit of a step further I mean uh again assuming that you have
faith in the system and like that's that's our our top Challenge and and and our top Focus um then you basically get account abstraction functionality for any chain as an eoa on that chain right so like even for ethereum you know again one of the challenges people are trying to solve with like the 4337 wallet pattern is that uh you actually have to you're basically having like one uh smart contract and one account for each change or L2 even that you are interacting with and if you want to make an update to like whatever the keys that are that are able to sign for that account or some permissions or whatever it is you have to send transactions to every single one of those accounts on those different chains and l2s um for this you don't you actually just have the near account uh or the near smart
contract and then you have eoas on whatever other chain you want to interact with and so you can like we have all that account abstraction functionality natively on near anyway and so you can just make changes to the near account and that'll it's like it doesn't even propagate but it's as though to the user it's like propagated to every single one of those accounts uh so for that example I just describe of like trading from Bitcoin to salana as far as Bitcoin and sonana are concerned it was just a normal trans like a actually nothing even happened in the base case right like step one is you have to deposit to those accounts on those two chains for each of those respective users but after that actually nothing has happened like if we just did the the sort of atomic swap where like I now have control of your Bitcoin account
you have control of my salana account those chains like they didn't wasn't even a transaction that landed there now if we want to withdraw to our respective like you know Cold Storage like wallets whatever it is um then a transaction will land on those chains but it'll just look like a normal transaction it'll just be like oh all right they transferred you know this Bitcoin to this account they transferred this usdc on Sal to this account and you know and and that's that and when you say that like you know the the buyer of my keys kind of like takes custody of of that you know it I I think I know the answer but I just want to hear like a little bit more about it it's like if I have other money or other Assets in that particular EA key it's not like they're going to
take like custody of all of the assets it's only what I put into this particular smart contract yes great point so generally I mean there there are teams using this to build wallets and in that case like you you won't you probably don't want to just sell your whole account but you can I mean there will actually be like with a new thing you can do with this is you can actually sell your whole account like I'm out like I'm out of crypto like I'll liquidate take the whole thing give me a price uh that will be possible but generally generally like the the uh the dexes we have building this now what they're doing is like they create an entirely basically new account like a new publicy for every single order so for the user they're like hey deposit into our like they'll usually be like
deposit to this order like deposit to this account for specifically this order and then you'll sell it they also will enable you to and depending on which assets you're trading like you could deposit to like a master account that they control and then they'll be they'll handle the like creating a new order for you when you just click like create new order and so you won't actually to explicitly you know necessarily like transfer those fund yourself but um yeah it kind of depends on the use case but yeah generally you should only put into this system what you are want to trade immediately which also helps with the security principles right because it's like then you only have that money you know like uh custody by the system for that discret period of time where you want to do the swap and then you have it
in your like you know crazy like mult multiple ledgers offchain buried in your back D type of setup for the rest of the time it's incredible this this account key public key gets created uh it gets funded it gets uh or that might depend on the Block time but essentially this this brand new account is created and traded to a new owner in the blog time of near which you said is like 1.2 seconds yep there's a little bit of extra latency for the signature uh it'll probably be like you know three to four seconds but it's it's pretty quick and we we believe we can get that down much further over time very very cool what what other like use cases you you mentioned kind of like the trading defi use case the liquidating the entire account The Rage Quit button if you will
like what other use cases do you anticipate this this scale opens up and this composability opens up for some of these multi-chain use cases ever CLE is pioneering the clearing layer the clearing layer can almost be thought of as splitwise when you go on a trip with friends but for the blockchain what I mean by that is when users are sending cross chain messages there's often times fillers and solvers who have balances left on different chains that they need to rebalance and reset their positions this is where evercar comes in evercar is pioneering a collaborative approach to the chain abstraction future and they are willing to work with inoperability Partners solvers and other providers in
the space to build a interoperable and chain abstraction feature check out Everclear ever clear.org and welcome back to [Music] Lup cartey is your home for app specific rollups at the Forefront of developing new tools and platforms that enhance the capabilities of blockchain Technology carty enables applications that are flexible and built to scale build on a full Linux environment and use traditional software libraries but in blockchain development go to cy. that's cy. to learn more about building your
own app chain today yeah so there's a couple of like main categories that we're seeing teams build with so uh one is like defi on non-smart contract chains so we have a lot of teams building things on bitcoin and what's cool is that um you know while it is not just using the Bitcoin layer one for security uh with the benefit is that you can add a lot of functionality without making any changes to bitcoin so in that way it actually preserves some of like the like Maxi ideals of like you know even l2s shouldn't happen on bitcoin I I think they should but that's a separate opinion so like you can basically use this system as like your smart contract layer for Bitcoin for Dogecoin for Litecoin uh even for things like you know bit tensor like newer kind of like non-smart contract chains so that we see
a lot of teams building in that area particularly in Bitcoin although some are experimenting with like bit tensor and others as well um second category is kind of what we call like any chain defi or omnii I don't know they're still figuring out the name on it but the idea is building chain agnostic applications where like as an application developer you might say hey my goal is just to get as many users as possible I don't actually care what chain I want to serve any chain where there's demand uh and teams that particularly fit into this bucket is a team like an oracle right like oracles like their product is verified prices um they if you look at most of the Oracle teams like they try to support as many chains as they can but obviously it's a lot of work for them to add new support especially as
like we're now in this great virtual machine Renaissance uh where there's a lot of new VMS and like that's what adds most of the overhead for them what's cool about this system is that if they bring their price VI the verified price view down to near they can then use chain signatures to sign it uh using like a key only their account can sign from which can then be used on like basically any chain that has kind of like private key verification functionality which is Mo pretty much everyone I've ever seen because that's such like a core kind of building block for for developers so and and like that that's like the Oracle case to do this and then we have teams like in the dex's and particularly dex's in lending space where they're like yeah we also want to be able to support trading between any
asss on any chain or using any asset as collateral on any chain even chains that don't exist yet like the second chain is live when we want people to be able to interact with our system with like minimal extra integration work and um because of the like flexibility of of the chain signatures like the how low level it is we can now enable that we can enable teams to just like build a product and then anyone on any chain can kind of come to it maybe even do the integration themselves if it's like easy enough and it doesn't require uh changes from the core like the core developer team to their system on near uh but they still support all these chains so like any any chain defi any chain applications is like another area and then the final one that we've seen a lot
of teams build with is the uh like multi-chain account abstraction so we have a lot of teams uh using this for basically wallet support right like if they want to add support for new chains or even I think one of the cool areas is um like pasy based wallets a lot of teams like infinex and others are doing really great work there and I think we're you know there's a lot of benefits to that um certain chains don't actually have support for that signature scheme and so you need either smart contracts like on on ethereum and like the 437 pattern or for something like Bitcoin you're kind of like out of luck uh without chain signatures so we have a couple teams who are you know basically building pass key based wallets for Bitcoin Litecoin these like these type of networks um they're able to use like
these you know this pattern on near so that you uh yeah you can get kind of that full functionality so there's a few others too like in the Privacy realm and uh some crazy like contract deployment strategies but uh yeah those three categories are the major ones awesome yeah that makes a lot of sense I think you know from the current landscape of things people want to do things multi-chain um not only because it'll enable certain use cases now uh like a lot of those being defi use cases but also because it'll simplify the on-ramp experience for a lot of these people to to get involved and use blockchain applications um they don't have to onboard into a particular ecosystem and then get kind of like vendor lack on you know any given L1 they can kind of just
onboard into the app that that they want to use um a really great example of this was uh you know something like poly market right is kind of having that that you know Breakaway uh uh distribution now where they're able to get into some conversations call them Normie circles right and I saw it it wasn't polym Market Affiliated but it it was an integration that someone had with the ton blockchain uh I think this was skate uh which is doing like some stateless apps uh and so they were able to do and and so basically like all of these different blockchains now have different uh advantages for their particular ecosystem or their app ton has a ton of
distribution on telegram right uh not to be confused with Tron which also has a ton of distribution but for another reason and so basically like uh skate was able to do this integration where uh you could bet on poly Market markets directly from and I think you know that is kind of The Best of Both Worlds where you anyone who's on telegram doesn't really even need to know or care that they're interacting with blockchain maybe they do if they have a ton wallet but they're basically able to just interact with a market that they want to trade directly from the user interface that they're familiar with with using and so you know all of that blockchain uh is abstracted away from the end user I tend to think
you know we're going to start to see some of these blockchains get used for their their use cases and their advantages that they have Tron being geographically located with some stable coin usage ton has distribution through telegram all of these different l1s kind of have their own their own like playing field that they've been able to master and now it seems like we're getting the interoperability standards and tooling that is going to allow these l1s to interact with one another and get the advantages brought out and all of these l1s are gonna kind of be able to combine forces for a a better end user experience um some of them more more user facing some of them more like you know it sounds like near is going to be
kind of like this this engine like underneath the hood that's going to be able to power a lot of the applications that may happen on bitcoin or happen on salana or happen on ton may end up using near behind the scenes yeah that vision is exactly exactly what we're really excited about too I think in the example you gave with like the like ton and poly Market powered by SK right now is is is is kind of the the case right it's like so what we want to enable I think even more so from like the developer side is like for the future poly markets yeah there is great Distribution on ton and like that I think that happened like well after poly after poly Market uh was was launched right like they've been live for years um and so for them to tap into that now it's like does require a
bit of work or or some of these things like skate right um and we kind of want to like for the next wave of developers we want to like prevent that right where you can prepare for a world where different blockchains have different strengths uh and different user bases different Target like cultures everything right like there there is just that kind of specialization happening um and and you can prepare for that in a really defensible way because like you're building on top of a low-level signature scheme which means you're gonna have the broadest based support possible when it comes to new chains the only thing that will will limit you from that integrating new chains will be do we support the signature scheme um and the good news is that I mean it sort of depends like there'll probably be some crazy new signatures that are designed will take
us some time to get like NPC you know protocols for them but uh generally everybody's using two signature schemes and so once we support those two signature schemes uh you're you're very you're very well covered um and so yeah the vision I think is like write write your contract right now on the air and like I mean you know we could potentially the the network could listen to other CHS too if that made sense for you know for our users but um it's like write your contract on near and you can you can actually just serve every single chain um and and and build these patterns where like your users just if they're on time like we actually yeah we have we have a very popular Tel W right now for near but they're using this Tech to expand to ton and to other networks
called hot uh and like their users have been very excited because like they were just doing things in the near system and now they do things on base they had like some some of the highest user numbers on base because they just like all of a sudden could do Partnerships with Bas teams and like let their users use Bas apps and now they're expanding to like ton and B&B and these kind of things and like so they you can now like as a developer have that kind of confidence that you're going to be able to access users wherever they are or bring users to you you know whatever whatever makes sense for your application without having to like you do all this crazy integration work or like think about like what how insane a migration would look like if poly Market wanted to you know move now like it's it's going to be
a pretty big effort for them right and I think that's where they're gonna have to you know tap into some other systems in order to kind of make that happen yeah they're on poly Mark is still on polygon proof of stake it's like kind of funny um that yeah uh they're still there and uh probably because it's a lot of overhead for them to migrate at this point if they would even migrate but it seems like there is uh kind of a like rationale to do so um Kendall you know this has been super informative I I definitely learned a lot I think our audience uh has as well I'm a math nerd and so like whenever you get talking about cryptography I'm always like you know I want to learn more and more about that um I think we went like pretty pretty
deep on all lot of the more practical side of things and so maybe we'll just use this like La these last few minutes as like uh uh appendix or like bonus track if you will but like you mentioned the two cryptography schemes uh I'm always like super stoked to like learn more about that and I'm just curious like you know as as kind of a beginner in that space for for myself and our audience like looking to learn more you know could you kind of just kind of give us a 101 on like you know how those different cryptographic schemes work what they are and like you know if we were to kind of like be curious to learn more where would we go and and you know what would be the best path to kind of go down that rabbit hole yeah great
question so I uh just full disclosure I am not the cryptographer on the team or even like anywhere close to the CTO uh of this effort that's this guy uh David who I'm sure you'll be hanging more for him uh who can really dive into the the details and we we have a like a technical Deep dive that we'll show like a formal model of like the NPC scheme kith and how it works um coming out in like the next week or so uh so I'll be sure to send that that way for your readers just to kind of talk about like the the higher level and how you would learn more though so um yeah basically uh there's there there are several different signature schemes that like PR public private key signature schemes that uh that are out there that are you know reasonably heavily used within
within blockchains there's I guess like three um but one is like a derivative of of of some of the others so like the the one that's used by originally was used by Bitcoin uh it was used by ethereum it's used by Cosmos chains and quite a few others is ecdsa and apparently it's like actually like an even slightly more complex version of another signature scheme that's existed for a long time which is EDSA uh and a specific version of that is the ed25519 which is the one that's used by salana ton near in a lot of popular blockchains today um and yeah I mean I like it the only other signature scheme that's like pretty popular that I'm aware of is like schnore signatures which is effectively like EDSA is a type
of schnor signature um so you're kind of like you learn how Shor signatures work you can like it might be like a slightly different sort of like algorithm for like how you construct like an eddsa signature like specifically the ed25519 um but uh yeah I you know recommend reading reading any material it's out there on on snor signatures if you're if you're trying to get an understanding of like how a lot of the the newer block CHS handled their signature schemes um for ecdsa there's there's some great papers and even some great uh kind of like NPC scheme papers that are out there I know like definity was actually one of the the earlier teams did this guy uh growth who's like a really amazing cryptographer uh who who used to be there who uh has a really great paper that goes through um kind of like a
pretty performant version of an ecdsa NPC uh like thresh threshold signing scheme um so that paper is definitely a good one to read um but uh and then the the one that we're using particularly is called kiith uh so lit protocol like they they were they also use kith they have some good material out there uh that explains like how how they how their uh signature scheme Works uh and then we'll be we'll be uh releasing that uh that deep dive on our side pretty soon too we like made some changes to to the way that it works there was more specific to our use case which we think will probably be be interesting for for some of the readers out there who who really want to dive into the cryptography um but uh yeah unfortunately not not as much my uh my exact uh field of field of specialty so
can't go too deep for for the other math nerds who are listening in because uh yeah that's that's L me no worries no worries it's it's tough It's like you know the I I I try to find every every ounce of gigabrain that's out there you certainly provided quite a quite a bit so I really appreciate you stretching uh to the limits um and give us a run through of chain signatures I think that's a very very cool primitive um for the multi-chain world uh that is going to really help uh in in terms of chain abstraction uh a bunch of teams that are building now so Kendall thank you so much for coming on man it was a it was an absolute blast yeah thanks for having me yeah it was super fun awesome uh where can people find you where can people learn more uh and just any closing
thoughts that you have feel free to share yeah uh Twitter is probably the best place um yeah maybe you guys can kind of share that in the uh in like the uh the Tweet storm uh but yeah that's that's where I spend most of my time also on telegram um pretty much those are those are the two places as far as closing thoughts I'd say keep an eye out uh we've got some pretty exciting announcements for the next like week or so um we we're attaining to this we're getting very very close to mayat so super excited uh super excited about that awesome yeah sounds good we'll uh we'll definitely have you tagged in the Tweet so you can uh everyone can go uh hop over to your account give Kendall a follow and uh stay tuned learn more uh and yeah good luck have fun uh on the
path to main net cheers thanks