Argent Workshop | Starknet | Ismael Darwish | ETHDam 2023
CryptoCanal·Sat, Oct 7, 2023, 12:00 AM
Ismael Darwish is a product manager at Argent. https://twitter.com/ismael_eth https://www.argent.xyz/ https://www.starknet.io/en ETHDam is a Hackathon & Conference that gathered over 500 DeFi and Privacy builders on the 20th and 21st of May 2023 in Amsterdam. Privacy is normal. Following the arrest of Alex Pertsev, a Tornado Cash developer in the Netherlands, ETHDam 2023 is determined to counter the chilling effects of the lawsuit and bridge worlds to discuss the future of privacy and encourage to build on the shoulders of cypherpunk giants. ETHDam is powered by CryptoCanal, - a blockchain education and events platform growing in Amsterdam, spreading its roots to Rotterdam and Zurich. ETHDam 2024 is on the map already! Keep up with us to see updates: CryptoCanal https://www.cryptocanal.org/ CryptoCanal Twitter https://twitter.com/CryptoCanal Join CryptoCanal Community https://t.me/CryptoCanalCommunity We would like to thank our partners and sponsors that made this event possible. 🌷 Our BFF 1inch https://1inch.io/ Our Frens: Sismo https://www.sismo.io/ Aleph Zero https://alephzero.org/ Scroll https://scroll.io/ RAILGUN https://railgun.org/#/ And our Sisters: oasis.app https://oasis.app/#earn Maven11 https://www.maven11.com/ bitvavo https://bitvavo.com/en Lido https://lido.fi/ Spankchain https://spankchain.com/ API3 https://api3.org/ Gelato https://www.gelato.network/ VanEck https://www.vaneck.com/nl/en/crypto-etn Marlin Protocol https://www.marlin.org/ Silent Protocol https://www.silentprotocol.org/ Cyber Capital https://cyber.capital/ … and Proto https://twitter.com/protolambda 🍍
Transcript
foreign [Music] sorry we're gonna start the next talk um all right so I'm I'm Ismail I'm product manager for Argent we develop smart contract wallets and we work very closely with the star core with stalker and developing stacknet and today I'm going to talk about uh stacknet why we're building on top of it and hopefully convince you to also come to the ecosystem um so as we all know ethereum has a scalability issue and starknet is solving that so as we know transactions on ethereum can become quite expensive due to transaction fees and that's because the network can't really handle that many transactions per second um and that's really due to the the fact that uh for a block to be included in uh in the network the block producer has to execute all the transactions and then in order to validate those transactions all the validators have to execute all the transactions again and that's a lot of execution resources um but do we really need to execute all the transactions in order to validate them um if we go back to well enter Starks Starks is a cryptographic proof system developed or invented by the the founders of stockware they did so in 2018 and basically what uh cryptographic proof system or specifically is Starks allow you to do is for approver to execute some computation and generate a proof of that computation and give it to a validator and the validator will just execute that that proof and be certain that the execution was uh done correctly without having to spend all those resources executing every transaction so in practice well going back to the the slides from earlier we see a block producer has to spend a bunch of resources to execute all the transactions in a blog and then each one of the validators has to do has to spend the same exact resources to validate them but in a in a system where Starks are used a block producer generates or computes all that those transactions and on top of that generates a proof of that computation and shares that proof with all the validators all the validators in the end they just need to spend little resources for proving that that proof and they can be certain that all the transactions are are valid so you can think of these validity proofs as a compression for for files so yeah validity proofs are to a computation what zip compression is to to to file size and this leads to quite uh efficient systems because the block producer in order to to add transactions to a Blog they they the more transactions they add the more uh resources they they spend and that grows linearly but for validators the proof uh actually grows well in a poly logarithmic way so the more transactions that are included in a Blog the more efficient the whole system becomes now systems that are already using Starks in production Stark X is an up a specific roll-up engine developed by starknet stockware sorry launched in June 2020 and it's the the engine that runs immutable so rare and dydx and all uh other systems that allow for many transactions to be executed as a roll-up on on ethereum and very you know very cheap way so so far there's been way well more than 400 million transactions in Stark systems and in all of them combined there's currently more than half a billion US dollars in in total value locked now stock net is a validity roll-up on ethereum powered by Starks and what that means is that it's fully uh open and programmable you can program a smart contracts on on it the same as you can do on ethereum and the transactions are are way cheaper we launched the alpha magnet in November 2021 and we are still developing improvements for it so we have the scalability issue solved but we have another big issue in the blockchain ecosystem which is user experience and let's take a step back and take a look at this statement I guess everyone agrees with it now self-custody matters but unfortunately a lot of the the services that we use today uh are not completely self-custodial so that's why we still use Well Services like coinbase or or Kraken or binance are are considered non-custodial um uh because they they really have control of over your assets and could you really say that you own your asset if you don't have have self-custody uh over it um unfortunately the past year we've seen all these uh scandals happening uh from these Services because of course if they can have the ability to move your assets they can do whatever they want with them and at the end of the day um yeah it can lead to two disasters like we've seen in the past months but why do people keep using those services It's really because self-custody is really hard and we can see that every day on on Twitter we see a countless cases of people getting either scammed or not not knowing what exactly or how to exactly use their their seed phrase or store them um and yeah use the the wallets that we provide them today and that's really because of the the way ethereum accounts work so taking a step back let's let's recap what the the two types of accounts are on on ethereum so there's what is called an externally owned account or eoa which is the one that holds the user's assets uh and then contract accounts which are controlled by by their code an eoa account has an address for identification and nonce to make sure that transactions are executed in a queue and a balance in ease to pay the fees and a user owns their eoa through a pair of cryptographic keys or the signer and designer and the the account are tightly coupled so the the address of the account is derived from the public key of the signer and transactions for that account can only be signed by that private key of that signer um and yeah the signature scheme on ethereum is the ecdsa on a certain elliptic curve and that's completely hard-coded that can't be changed so if we take a look a bit at this this representation on the user side of things we have the designer with a private and public key and on the blockchain we have the ethereum account which has the the address the nons and balance as we talked and all of this is hard-coded the concept of assigner which is the entity that is authorized to spend your tokens or execute actions is the same one that holds your assets and that can be changed that's what we call the original sin and that means that's where all the issues come from because if you lose your signer that means that you lose access to your account and also if your signer is compromised or gets hacked if I have your signer means that I have complete access to your account so the the entire security of the EOS really relies on users managing a single secret private key and we all know that humans are not great at doing that there's no safety net users can't make mistakes and this is really a a flawed design that won't work for mainstream adoption now can we do better so in our opinion layer twos such as stagnet are the perfect opportunity to fix some of the limitations of ethereum um and yeah enter the concept of account of traction or smart contract wallets the goal of a kind of fraction is to decouple the relation between account and assigner so in practice what this means is that an account is a smart contract on chain that can have arbitrary Logic for uh for how to validate the actions that the user wants to to perform so you could imagine having a different signature scheme a different elliptic curve or even have multiple signers that are required to sign an action in order to to perform it on chain and we can have complex Logic for modifying the signer of an account um yeah if and taking a look a bit at the the overall architecture we usually have a wallet which is a piece of of software that the user uses that is in charge of managing the the key then the user signs that transaction and that goes on chain goes to the or the stagnet VM takes that transaction uh executes it through that user account contract and that contract has that validate and execute logic to validate and then later on execute the the transaction itself and if it all of that is valid the the transaction will execute some piece of code on a Target contract like changing or sending tokens to another address or performing some some sort of other action um now use cases for smart contract accounts I'm just going to outline a few of the main use cases but there's a lot of research going on in here and there's uh yeah a lot of interesting stuff uh happening so the first one is multicol uh this is quite interesting because so far up until now actions on the blockchain uh have always been tied one to one uh with transactions and that's uh that leads to a pretty bad ux sometimes because for example to to do something with an erc20 token or allow adapt to do something with your with your tokens you first need to approve that dap or allow that app to to spend some of your tokens and then on another transaction trigger that dap to um to use those tokens and that means doing two transactions one after the other uh with multiple we can now bundle all actions into one single transaction and that has many benefits so one is ux by by bundling all those actions into one transaction you can approve and and call that Tab in a single transaction you can also bundle a bunch of actions for example on a game or something like that to to execute or commit all those changes to the blockchain in a single transaction saving um the overhead of of the the transaction fees um and yeah there's there's a countless more more examples of of things that this could be used for then social recovery this is something that we've been having on our wallets for since pretty much the the beginning um and what social social recovery means is uh basically adding um other roles to your account that are able to trigger some sort of recovery mechanism in case you lose your key or your key is compromised you could imagine that you have set your family members or your friends or an external service that acts as as your guardian as we call it um and by contacting them they can trigger this recovery mechanism and after a security period in our case it's seven days um you could then change the main signer of that account and in practice just recover access to to your account of course in the in the systems that we've put in place this is done in a completely self-costal way and can be canceled at any time if your friends are not as good friends as you thought um then a fraud monitor we we also have systems in place in our wallets to for example allow an external service to to sign all the transactions that you perform on your account and that external service would for example process that transaction understand it and let you know whether or not it's considered fraudulent so you could imagine that service having a blacklisted list of accounts or or contracts that that are known to be malicious and since the account requires the signature of both the the fraud monitor system and the main signer you could imagine that that fraud monitor system blocks that transaction um of course this is uh same way as as we did with social recovery this is all done in a self-custodial way and can be canceled anytime as well now with all of this uh well we have many more examples of what can be done on on um on Smart contract wallets uh like for example way more efficient multi-six or a way better experience for for games or even um better compatibility with different wallet systems um but yeah these are just some of the examples of how ux could be sold thanks to Smart contract wallets and account abstraction now Argent is building a bunch of stuff on on stagnet and all of that is thanks to a kind of traction and the fact that stagnet supports natively this smart contract accounts we have our web wallet SDK which is an SDK that pretty much allows all apps to to have an email and password flow for their users and that gives them a completely self-custodial wallet that has a social recovery and this fraud monitor system basically bringing the best of the web to experience to web3 and this is all supported by account abstraction on stagnet uh we also have our Argent mobile app which is um basically the the most seamless experience that anyone could have on the blockchain um because it's a it's a a flow that doesn't require any any management of of seat phrases or or keys and of course it has the fraud monitor service and and all that social recovery and we also have Argent X which is a browser extension wallet uh more for tech savvy users or people that are more experienced with with blockchain Technologies uh it'll soon be supporting our Argent multisig for dials and institutions um and yeah that's that's all built on on stock net so some conclusions stagnet is a validity roll up on ethereum solving the scalability issue stagnet is the only Network today that supports only smart contract accounts and that brings um a huge ux improvements to that Network because all the accounts are now enabled to have that advanced functionality and that's why we choose to build on stagnet well that's it for me thanks a lot I'm again Ismail product manager at urgent we do smart contract wallets and if you want to chat with me after the talk I'll be around thanks [Applause]
Automatic transcript — names and jargon may be misspelled.