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

Loading player…

ETHWarsaw 2023: Adegbenga Ogungbeje, Hyphae - Developer challenges on implementing ERC-4337

ETH WarsawMon, Oct 7, 2024, 12:00 AM

Presentation - A brief talk by Adegbenga Ogungbeje from Hyphae. Gain insights into Hyphae's efforts in fostering interoperability and collaboration in the DeFi space. Follow us for more updates: https://twitter.com/ETHWarsaw

Transcript

okay okay so uh let's welcome ABA with round of applause I'm going to be rude and not introduce myself can just read that and do you agree or disagree or you're new true if you agree put your hand up who disagrees put your hand up don't be scared who's neutral okay what this highlights is sometimes when we're trying to deal with a new tool or infrastructure platform it could be an arc an AIP we as developers as people who have to propagate this particular technology need to know where exactly are we looking at to get the quickest the most efficient the most cost effective and the best results and this really highlights it clearly if Isaac Newton was was uh looking into the books it wouldn't have discovered gravity or it might have taken a longer time so now I'll introduce myself or I'll reintroduce myself because I have met some of you here it's my name like to try and pronounce it it's uh pretty difficult so most people call me Ben you could simply call me Ben if you would like to and uh I have dued myself as an account abstraction evangelist I believe that would be a job descript for the future in fact I actually believe account obstruction developer would be a specific role within organizations so enough about me uh just it's not my best picture so should have put something there look may make look more handsome so just by a raise of hands put your hand up if you know whatc 437 is so give or take I would say that's about about you say 40% of the room if you've never heard of ERC 4237 don't be ashamed the do closed the windows are shut put your hands up okay put your hand up if you actually implemented 4237 one person okay put your hand up if you're in the process of thinking about implementing it you've been thinking about it okay fantastic well we're not here in wara today oh no we're not here we're in Denver Colorado it's nice is warm isn't it yeah and today is not the 31st of August no no no no no it's the 1st of March it's wallet con wallet con was when we had this exciting news about the integration of VC 427 into the main net and you advice one of the co-authors of VC 437 he withdraw to russan others introduced it massive Applause everyone excited finally we could go ahead and get million of uning users onto web 3 but since that time it's kind of not really happened isn't it so this talk is not about ERC 427 because we've had conversations about that breakdown of the user ups and the aggregator and the pay Master no no this talk is about developer challenges on implementing ERC 4237 really it's a very small sample survey of speaking to developers that are actively working with ERC 437 and just trying to give you a very high level view of some of the challenges now they have classified this as non- Tech don't blame me so it's going to be a very high level view but this is a taster because I have a local Meetup where over the next couple of months I'm going to directly speak to these developers and you can access through Zoom online to hear some of the challenges they had Direct challenges had in implementing 4337 so don't worry don't worry we're going to make progress so this is just a summary if you've never heard about ERC 437 this is just a summary of the components of it I want you to really take note of that phrase at the end contract account because in the course of this discussion and this is discussion is another talk we're going to come back to the significance of that word contract account these are just some of the components at the initial stage I believe there will be sub components at some stage but this is what a lot of people within the industry are working with and recently we attained 1 million user operations so if you want to clap for that I don't know but you know people got really excited about it so that's the core gist of ERC 437 now these are some of the things developers are building or trying to solve within the field these are the motivations these are the reasons why people get up and go to work on Monday and leave excitedly on on Friday so people are trying to bundle transactions as the case might be some are trying to um find a way to eliminate seed phrases the the long the long shortened phrase of ERC 437 is to eliminate externally owned accounts which is ambitious it's a very ambitious undertaking but this is some things that generally what people are building around and most things you see people are building with regards Toc 437 will fall into one of these several categories you may hear phrases like gas abstraction non substraction seed phrase abstraction and so on and so forth but it all falls into the bigger ecosystem of implementing those different things ofc 4337 but the key question is what are the challenges now I want you to reflect on this first of all this ties into every single challenge that we're going to face in building y 437 if I wanted to start out today to become a JavaScript developer I wanted to start out to become a c developer as the case might be if I wanted to come build erc20 there's tons of Articles there's tons of courses there's tons of reference materials whether it's YouTube Google I can refer to to actually build a very very good application we don't have that situation in NC 427 and this next slide will show why now I've put all of them together who can guess why any rough guess why have I put all of this on the same slide this horrible looking slide any guess well the reason is because they all overlap some of the challenges with tooling are based around education some of the challenges with education are based around information and vice versa these are all the challenges so let's just look at some of the specific challenges so one of the challenges talking to developers is the request for better libraries in terms of implementing either a pay Master a bundler an entry point or an aggregator or user at this point in time we have the user.js from stack stack up which it can be used to implement user ups but probably would be nice to see more specific libraries libraries on the level of e. JS or web.js for the different components ofc 437 so that's one challenge for to improv sdks is another challenge and does anybody know of anyc 437 companies or startups just shout out to name please not really yes e ether Sports there you go you want to say you want to try again maybe okay there you go you please okay they have they recently had their wallet forun compatible let's give it to them okay pimo you've heard of them no they're not pop water so yes you good again oh not really any other B economy you heard of B economy you definitely heard of economy stack up no doesn't ring a bell this demonstrates and this is not to embarrass anyone you know this is demonstrates that we don't really know a lot about the different works and improvements and infrastructure are being bu around it so if we don't know it definitely we won't have good understanding of the sdks and there are challenges in sdks some of the sdks have implemented for example a bundler which is a component of r427 which patch the transactions together but they've not implemented the pay master so if you wanted to use a different platform you might have to go and pick an SDK for pay Master here and an SDK for bundler there and so on and so for you're going back and forth you're talking to this team you're talking to that team so that's one challenge also the range of tools we have are quite Limited at this point in time just pause and think about the range of tools we have for nfts just think about it you have nft wallets you have uh the kind of decentralized storage Services you could use the list just goes on on and on and on and on or erc20 but here we limited because as it demonstrates if you're not using stack up or you're not using p know in bonom as the case might be then you're very limited in what you can use then various components various components I'm talking about the components of ERC 4337 so talking about a type of bundler or type of pay Master as the case might be or type of aggregator does anybody know about any bundlers here can you name any bundler it's not a sausage give do you know what it's called yeah well good yeah it's called rler very Innovative so it's called any any other bonders do you know any other bundlers have you heard of it it's not an Italian train station you you know you heard of that so so you can see so there's a stackup bundler the AA infini in group itself has a bundler it's just called Infinities in bundler that's what it's called you have rler you have a block pie that just started their bundler but we we don't know about these tools so if you wanted to come to this hackaton and build something relating to ERC 437 it might be quite difficult another challenge we have is education remember we talked about contract account is a contract account the same as a smart contract wallet is a smart contract what the same thing as a account is an account the same thing as a smart contract account if you go through article onc 437 ranging from Pim Cod to stack up and all across the board you would see different terminology explaining the same in fact sometimes some authors will say at this point I'm just going to call it account for the Simplicity of this article so we need some kind of agreement on terminology if it's a smart contract wallet let's be consistent with it if it is a smart contract account let be consistent with it if it's just an account let's been consistent with it courses obviously they're Limited in terms ofc 427 there's not too many courses out there that you can actually go at this point in time and have an in-depth information about getting the components of it articles is the big one who loves to write articles here are you a Dev okay how many devs here please put your hands up your death keep your hands up if you love to write articles there you go we dislike writing articles we love coding we love building but we really dislike writing I don't know why don't ask me so what's happening within the field is that a lot of people are building great great projects they're running into difficulties of solving problems but they're not writing about it so for example this morning I read an article nons collision and they've written one article on it now if they didn't decide to write a non cision and you decided to implement a bundler and you sent a user up at the same time with the same LS to two different bundlers you will potentially have one user up that would be successful and one that will faill and you'll be wondering why your money is gone but that's an example but they've explained ways you can negate non Collision so it's important for us to start writing articles always remember please just writing something is better than not writing anything if you want me to write it for you you can get in touch with me I will help cyri it then standardization also standardization is interesting because what was set up initially was if you have to set up a bundler for those of you that are not bundler is what batches your transactions together there's a test specification Suite you need to pass because there's rules to implementing the bundler so many people have run ahead in February this year there was a big Grant people went they built bonders left right and Center everybody just building bonders and now we have about seven eight bundlers within the ecosystem but only three have passed this test specification Suite so you potentially might be using a bundler that could get griefed or could end up suffering from some kind of front running attack so that's the challenge in terms of information we don't have too many meetings onc 437 has anyone here attended the arc 437 de meeting have you ever heard of it yes you've heard of it yeah you heard of it they've had 12 meetings so far 12 meetings 12 meetings where people are meeting discussing pertinent information about TC 4237 and we are not even in attendance we don't even know what they're talking about they're not writing up the notes you can't access that information anywhere you can go to YouTube and Google for it you can you can search for it on YouTube but generally there's a disconnect between it if you contrast that with the number of people that for example attend the ethereum development calls or maybe other kind of calls where there's hundred of people connecting on Zoom that means there's a need for us to really get involved we've never had a summit onc 457 I know some people might say it's ambitious but at this point in time it probably would do well to have a summit because ERC 427 is said to be the way to unbo millions of people to really truly gain Mass adoption so a summit where people will come together and really discuss about it the closest we've had to it at ECC was beyond thec 427 which was a bit of a day to discuss it but nothing really in depth a full hackaton gelato tried to run a hackaton and mainly focusing on account abstraction as the bigger picture um but the full hackaton of just trying to use these tools whether it's a bundler a pay master the different kind ofc 427 wallets be really helpful and then obviously an ongoing blog EOS spot have tried to run a Blog on NC 4327 but it's very generic it's more around different things happening in account obstruction and sometimes they just throw a bit of information there just to Beef It Up okay let's just throw something in there um and then the website now the website one is a funny one the running joke is the co-authors ofc 437 do you know do you know them you know who they are not that really matters you have viice drug to rush and so on and so forth they have not completed the website up to date so if you want to help them complete the website I'm sure they will appreciate it there's many sections missing so there's no way you could go and have a comprehensive information on ERC 4337 so those are the challenges the core challenges there extra challenges now Solutions build build build you know remember the song bills bills bills pay my bills telephone bills you know so build build build we need to start building we need to start building making different components compatible v47 it could be relayer it could be things on hard heart it could be on different different tools it could be a front-end app it could be some kind of sequencer but we need to be building a little bit more at this point in time people are very scripted in what they building in terms ofc 427 people are still within their comfort zone but we need to be a little bit more ambitious we need to document our challenges we've already touched on it if I'm having a difficulty and I write about it that means you as a point of reference doesn't need to waste time having the same difficulty because if I have a good solution to it you just adopt my solution why reinvent the will no need for it isn't it that's what we do as developers we look for good Solutions and good practice form local me meet ups um if it's something you're interested in a local Meetup dedicated Toc 4337 will really help because if you have that local Meetup everybody coming there has a dedicated purpose and you get more out of it participating hackaton now at this hackaton there is a section on account abstraction maybe touches on4 is anybody planning to attempt for the bounty great man a man after my own heart yes I know it's difficult I I try to utilize the trampoline wallet at e Paris it took me two days it was pretty difficult they were missing a few scripts in the end so it was difficult but try to implement it to some degree in your application even if you're calling is ZK proof or layer to scaling Solutions or whatever your special interest is or defi see if you can just use the pain Master see if you can Implement a bondet to buch your transactions then also you know joining discords the Infinities in Discord is the Discord that has the most prominent conversations there's a great telegram group where you can go in and have really really good discussions about it and then also the other particular areas you can go to and get get involved in the conversation apologies so sorry for that so so yes join the discourse group The like I said the infinitism group is very very good um it it can get really technical heavy but don't feel intimidated by it and take part in the conversations an abitious wants to organize a summit on ERC 47 some may argue on account abstraction which is the bigger ecosystem so that's potentially a goal if anybody's interested in joining me to organize a summit as some point you can come to Leicester the most beautiful city in the world you know eat some good British bread if you would like you know and then we could have a fun day yeah but that's a plan and we can get grants for it so don't worry you will get your your expenses covered so a day where we can get people can some of the challenges of implementing pay master and bonders and so on and so forth communication with teams sometimes we reluctant to communicate our views back to the stackup team because we feel they're busy but it's quite important that we do speak to them about challenges if I've had a difficulty with say for example sending certain amount of transactions in terms of the bundler they would like to know because ultimately at the lower scale it wouldn't matter but probably at the bigger scale there might be severe consequences to it Network please so please talk to each other you want to come and speak to me at the end I am open I'm free I'm friendly you know can come and speak to me and we can have a conversation about it so these are some solutions remember these are prescripted solutions you as you work on it as you use it implement it you would come across other the better maybe more improved Solutions than mind and you may even face a wider range of challenges but please document these challenges so if we come back to where we started from where do we need to be looking to solve the problems of VC 437 I hope this discussion has given you an Insight of where to look we need to look outside the window and maybe night to the books thank you very much

Automatic transcript — names and jargon may be misspelled.