AllWalletDevs #18
AllWalletDevs · March 2024 · 41:27
Call 18 of AllWalletDevs, shared on YouTube in March 2024. Wallet developers meet to coordinate on the Ethereum standards and protocol changes that affect their products.
Topics
From AllWalletDevs, hosted by ECH Institute.
Transcript
huh yeah okay so um I guess we can start um if anybody has anything they want to talk about feel free um we can just shoot the whatever otherwise I'll beg for more money for WTF but that can that can happen at the end uh I could report out on Aaliyah and DEP patched mode Ryan and I were just talking on another call minutes ago um Costa secure design call about the eoa to Smart contract migration
multi-thread multi-year debate like Ryan tried to yeah uh okay um you could if you'd rather report out I mean right yeah yeah sure um am I coming through okay yeah okay sweet uh so uh yeah we as as Swan mentioned we're meeting monthly in the secure design work can group some a bunch of uh uxm minded folks uh some designers some engineers and uh today was our 10th meeting uh like spring last year
um we resolved at the end of uh uh 2023 to to start getting into a Cadence of picking eips um or or any other standards really uh to focus on in the in the interests of um helping everybody get a clearer picture of what the positive impacts uh could be of the implementation of these things slash um what the uh remaining risks uh or rough edges might be um that that uh could benefit from being explicitly like tackled in the specifications process um as they might you know show up in user experience and W had you know turn turned our uh
attention towards 7377 um back in August uh and so we sort of figured we'd pick that one up over the holidays and do some homework on it uh I think uh uh you know re realized uh just yesterday that like probably um uh that had stalled due to what appears to be concerns about L2 address aliasing and uh notice this morning that um 3074 uh was kind of on the of ideas to consider um for uh the Prague uh release
and just kind of came to consensus this morning that yeah maybe like it's it's it's very much 7377 shaped um probably uh has a lot of the same ux uh benefits and and concerns and maybe we're going to turn our attention towards that um so wanted to raise that in this group um maybe get folks feedback on if if if you guys think that would be a beneficial uh proposal to have some ux specs and audit around uh and just generally announced that that practice is something that we're looking to do in in that group over the uh the following months cool so one one thing to note
about 3074 is that we have to um which looks like it was merged so this um would mean that like uh Nots uh or number used only once yeah Sor my internet's been kind of kind of crappy today um yeah so uh this would mean that signatures can only be used a certain number of times before they get invalidated um and that hopefully would make it more appealing to core devs uh which is I think why it's back on on the menu um yeah and then you know obviously if you want to actually migrate using 3074
we also have EI IP I think it's 50003 um off which is the act yeah which is the actual migration thing and then yeah okay cool yeah um sweet uh and I haven't done my homework yet so I don't want to waste everyone's time uh with uh with questions that could relate to uh like just read the manual um but uh yeah it was I saw at least a few people advocating for if if we're going to pull 3074 in um would it make sense to duly consider 53 and uh and then the the one other
thing that I saw a lot of um interest in that for sure came up quite a bit at the wallet uncon that uh that one and I helped organize in in Turkey uh is 7212 the uh setb 256k uh r one sorry curve support um so that that Trifecta feels like a a really good uh Trifecta of of things so I probably probably will also start a thread on how those three things lean on each other in in maybe e magicians um and solicit feedback and then the one other thing I wanted to mention um was I I may for anyone who's going to East Denver uh organize some
short conversations like impromptu to be uh taken place in some corner of sport castle that may be called the wallet uncon on the salon um uh and so I I'll probably share that in in this Discord um to see who might be interested the idea there would be we'll kind of short list a couple of things to talk about for a couple hours and maybe have it occur two or three days for two hours at a time depending on how many folks might be interested this would just be to talk about wallet standards and best practices but I will share that event
when I'll probably G make like an unlock expression of Interest thing this week cool that's exciting who is going to to eth Denver I'll be there nice I I might go just for whichever two days the E uh the EIP thing anette's doing and what Ryan's doing fall on so I'm hoping they're on consecutive days so I don't have to choose between my children so you mentioned um ux and audit type
stuff yes so what does that look like so we did get an audit of 37 24 by D I think it was D um on an earlier iteration um so what what would this kind of an audit look like and that was more um sort of an engineering centered security audit like um uh exactly yeah yeah so so this would be the exact shape of it we're still uh I mean this would be a first run um for us to figure out how that process works but the idea is to take the lens more of um language uh considerations about multimodal
accessibility um uh internationalization and localization uh and sort at the beginning instead of language I might have better said terminology uh user facing terminology and then uh likely a lot of drafting up of prospective uh experiences this could enable so that it's maybe easier for folks uh both on the DAP side the protocol layer and uh working for wallets to discuss in in clear terms and reason about ux impacts um so those are some examples uh yeah nothing set in stone yet but the idea would be to just make it feel a little bit more real and see what we could catch well in advance of uh things
hitting uh H hitting hitting implementation and u u act just sort of like circumstantially being uh not underconsideration are missing is how it actually impacts the user side on kind of a a related note um a while back someone had posted a um Matt SEC um had posted the wallet wallet
security verification standard uh guidelines um and that's kind of like a list of uh user interface guidelines for wallets and such um so it's kind of in the same vein um different different subject matter but still for user interfaces and stuff I put a link in the uh the chat here yeah this is stuff like um you know whenever you display a truncated address make sure there's a way to view the full address um stuff like
that amazing that's cool I think Justin had his hand up too for a little while um I don't know if he oh yeah sorry I was just uh a little late just showing that I was gonna I was trying to show that was going to be a eth Denver oh right on didn't didn't have anything to add I'm just skimming through the uh the wallet security verification standards I I think this is a pretty cool idea um yeah I've got like 20 something wallets installed right now and I can guarantee you not just you know ethereum ecosystem ones but no one's no one's the vast majority of
people are not doing uh much of this at all so this is cool to see the uh the relative quality of wallets is astounding sometimes yeah I mean without um they're no one from uh this particular group but I mean some of the stuff like I have iohk is cardono wallet installed it's like a hobbyist beta it's so bad oh this is a recorded call um but everyone is uh working hard to improve upon that so it's okay we don't know what company you're from it's not your username or anything so
yeah yeah just thinging there there's a lot of room for improvement that uh demonstrates the Merit of discussions like these and initi IES like the uh Waller security verification standards like it yeah I think I think we're I think we're coming up on that time where uh with the testing framework it'll become CI will become table Stakes soon I hope like uh people will hopefully be running regression tests against the the uh conformance Suite um and also it's there it's there people people should already
be using it but you know takes a little while to trickle down I think what I think there's like a maybe a feedback loop broken between uh products launching and like shame mechanisms like that that coinspect audit uh comparison or bugas comparison don't quite what's the word the people who uh scored poorly on the or like the products that scored poorly on those kinds of audits need to get what's the word I don't know pressure shamed yeah shame shame shame we can call it shame we need the uh the
the nun from um you know the one I'm talking about A Song of Ice and Fire um game of yeah the Game of Thrones Game of Thrones yes we need the shame none shame none uh speaking of uh do you have any updates about the test test Suite I thought I saw uh yes so we we're building um integration for um coinbase and Tahoe right now um just because they're they're the easiest we found to work with not because we have any like special deals with them or whatever um and that's been going really well so we can basically automate Co base so it runs without
human interaction and then uh Tahoe or we have a few PRS to try and merge upstream and then um you'll be able to run Tahoe wallet without human interaction as well so that's coming along nicely um and yeah like the glue is actually pretty easy to write it's like I think there's six functions you have to implement right now like approve a transaction reject a transaction uh like connect a wallet those kind of things and then you can use selenium or whatever you want to click on the buttons in your extension and then it's done um yeah and then you get all the tests and I so I was I was talking with somebody from um cow swap the other day
uh about wallet test framework obviously trying to get more funding for another year uh and uh so kind of an interesting idea came up which is that we can use wallet test Frameworks uh like adapters so that adap can write tests for their own dap and then run it against any wallet that implements the the glue spefication so uh like let's say you wanted to make sure Unis swap worked with the top 10 wallets or or cow swap or whatever other dap um you can just write your tests and then they'll automatically be able to work with any wallet which I think is kind of a cool feature we hadn't considered before H yeah
and wallet wallet connect has something like that just for The Connect flow I think like they they had to yeah they expended a lot of energy making that and some people already used that but that being like it it can approve the connection from the wallet side like they have a test wallet and a test app and they they can run some little barrage of tests I think they're still working towards the selenium part I don't think that's um shipped yet the being able to like sounds like I need to talk to them yeah there's like they've
been putting a lot more effort in testing lately and there might be some recyclable stuff there um or or even just like yeah complimentary stuff they might want to uh let me try to let me let me figure out who there to put you in touch with I hadn't even thought about it till you mentioned selenium for some reason I'm like I'm like where have I heard the word selenium yeah because I I find um Pedro is really hard to get a hold of um yeah it's it's not a one man company anymore man that's a it's a no no but he's he's the only person I know
well oh yeah yeah yeah I can I can uh talk find you someone there um perfect yeah thank you uh what else is new um yeah we're we're coming up on our uh one year in April so uh like I've mentioned several times uh we're trying to get some support from the wallet Community uh I've talked to Dan Finley at metamask um Adam at coinbase and Kyle of Brave and uh there's some you know early results on on getting a little bit of funding there but you know if anybody else wants to throw money our way let me know um hey we have a road map post that we put up uh some of the things that we
want to work on for 2024 are if my internet works um yeah we want to add support for wallet connect that's a big one uh 6963 um and we want to add tests we want to add better documentation so it's easier for wallets to build their own glue instead of having to rely on us so I can put that in the chat as well um there we go um yeah if if you think we should take a look at you know trying out metamask uh like automating it let me know um because we have enough time to to do at least one more wallet glue before the end of the year so that could
be fun um and then in non WTF related stuff um I'm looking for volunteers to work on a wallet working group um this is all still very up in the air but if you're interested shoot me a note um and I'm going to keep saying that on every call until we have working groups so yeah I think that's it that's all I've been working on that's wallet related so yeah what are you specifically looking for with the uh the groups like what is the oh specific yeah uh so the the um shortest time commitment would be like
help me set it up figure out what kind of workflows work for wallets and then you can just disappear and never look at it again um the kind of longer term commitment that I'd like would be people who'd be interested in reviewing wallet eips uh so that'd be things like uh adding new RPC methods uh just basically anything related to wallet standards and uh these working group members would kind of take on the role of EIP editors but only specifically for uh wallet related proposals it'd be a time and commitment of like I think I spend maybe three or four hours a month on it it's not a huge like
deal yeah I sometimes think the work the work it takes to be a good reviewer of those uh eips is kind of the work everyone's already doing if they work at a wallet company and like just keep an eye on the interfaces of their competitors like if you're just tracking when the like dap connection libraries and change and like I don't know coinbase is weird proprietary stuff they push sometimes you're kind of already the the working group the member of the
working group needs five of so it's it might just be like so like there's an upfront investment of of setting up a process but after that it's kind of just a gossip Network for people people watching a market so yeah feel essential homework for all of us here anyways to to keep on top like this this is kind of already is a wallet working group right like what's what's the is is the is the call for volunteers to help formalize it as an EIP subgroup kind of thing yeah so the I guess the specific request would be
people who would want elevated privileges on the GitHub who can merge poll requests that is the carrot to dangle are you sick of not having privileges on the guub are you tired of get Matt telling you to move your wallet eips to a different repository well boy do I have the job for [Laughter] you yeah I think I think maybe what what's made me hesitate to volunteer for that is that I'm kind of clumsy with
GitHub and distracted and have a million other repos I work on and like wanted I I would let's put it this way if anyone else wants to do it and like set up a good thorough onboarding call I'll attend it as well and take notes and do it but I feel like I I'm a plus one I I I'm not the main guest of honor yeah I'd love to do it I'm probably the least technical person on this call since I'm not a software developer but a big part of why I lur in this group is that you know we're kind of odman out with a hardware product where we're you know a blockchain agnostic cryptographic signing device so
it's about making sure that we support what everybody else here is building and plug into it well and keep up to speed so for me it would be useful um but if you want someone who's specifically an engineer rather than me referring back to to my team for feedback on stuff that would make sense too but yeah I'd love to be involved if you're if you're looking for people and that would make sense yeah so it is it isly a nonex um you just have to read understand English and be like this is unclear this this is not worded well or this doesn't follow the template those are the kind of feedback um that we're looking for or like mostly and then anything on top of that is is you know
extra um my only EIP didn't get merged so I might not be the right person but uh yeah which one was that I did uh Nick Johnson called me a terrorist for the uh EIP process because I did an informational proposal which no one ever does and it was uh against Prague palow signing industry support getting in repo somewhere but yeah everyone was just adding their names onto that to show that they did not want to uh initialize Prague PO on on mainnet I mean that's that's one way to show support I am so so I I I I came into the
ethereum space just after the progpow like died down a bit and I am so glad I missed all of that poor yeah poor Hudson on every allore devs call was just like was so ridiculously contentious it was almost it's kind of funny in retrospect and then a mean got into the mix and uh spiced it up too so is he the one who asked him am I a cordev or something along yeah that was that's the thing the Seinfeld clip of the all cevs call with like the Seinfeld slap base in the background with a mean going can I be a cev and then Greg cvin saying you're not a cordev and then Hudson saying let's let's take this offline so yeah he was he was uh very good at uh
being able to stay calm and keep balance when everyone was getting kind of heated over the issue so glad that one's in the past as well Tim and Matt have been doing an awesome job since as well so it's not always a fun job to have moderating those meetings and trying to ascertain what rough consensus is so oh we get a slice of that on the EIP IP meetings it's it's wonderful yeah sometimes I wish we could just you know have a hard vote on things like just just vote and you know majority wins but can't do that so yeah and then who votes remember and then you
people when we had I think what was uh I can't think of the the parody wallet recovery EIP that was super high I think it was 9999 then like they tried doing a coin vote and they voted with the locked coins and so no one even really agrees on what the framework is so this is how we regress to rough consensus but it's kind of a good thing to have uh that degree of friction for getting changes merged yeah it makes it harder to capture right that's one of my biggest fears with the ethereum governance is it just turns into like a corporate like Wasteland people arguing about things and then like Google or or coinbase or something comes in not saying that either of those companies is bad just examples recorded
call and they just like dominate the ethereum development landscape yeah well if you're if you're listening to this uh Google and you want to dominate the ethereum landscape fund the WTF joking joking seriously though fun WTF it' be great I I'd definitely be uh pestering grid a little bit more if there was some way to automate clicking on buttons on the grid uui well hopefully we we never do that but uh yeah I'm um again as I I mentioned I've been trying wallets from
tons of different ecosystems and in man Auto signing being assigned to daps terrifies me I'm glad we're not doing that what is auto signing oh in the salana ecosystem you can grant permissions to automatically sign with a dap without going back to the wallet to approve what that's insane yeah you can just be like this Dex is trusted so all I have to do is click in the web the website in the DAP interface and it will automatically sign there's a lot of what could go wrong yeah I mean permissions we already know how terrifying and frustrating all of that is and then being able to assign a permission with that kind of power um
yeah people go for what's convenient from a UI perspective but uh I mean obviously we're a security team we're uh we're as conservative as it gets when it comes to things like that uh and want to you know create that friction so people can stop and keep themselves safe but uh yeah um it's a good question how does that vary from session keys I I yeah I I'm going to not mention 3074 here definitely not well that's that's just bundling a few distinct transactions though in what we're expecting to see with permissions right not well so 374 technically gives IR irrevocable access to the entire
account forever so yeah but what are session Keys what's that session Keys oh yeah sorry go go ahead basa uh I think isn't like session G like more like defined in terms of okay like what you want to do in terms of like the time based stuff and like maybe you can Define like more permissions in terms of okay this is like the only amount you're uh allowed to spend or something so like just like being able to like Define like more rules and stuff rather than just like yeah going on like a full tab kind of a thing yeah I mean like that's my um I that that would be my question about
Auto siding right like if it's um if it accommodates finally attenuating and scoping things only to a certain delegate you know like uh hey this delegate can only do things on it can only interact with addresses X Y and Z and it can only call uh signatures a b and c or whatever right um then it wouldn't feel like it's all that different from session keys uh which examples of session Keys would be found on um mirror trying to think of other examples
off the top of my head uh and largely largely it's for kind of offchain signatures but I think you can maybe still use session keys to kind of proxy trans actions being submitted on chain this is where I have to Cave it I'm a designer so I don't understand half of the words I just said I thought it was convincing yeah it's it's good I mean something like that I feel like you want to have a strictly defined permissions framework you know that constrains what can be signed um otherwise I mean imagine the
chaos that can be wre by you know doing that with a a malicious front end or something and you're signing over that degree of control um but again I'm in the same boat I don't know as much about that ecosystem and how that's working under the hood I've really just been uh the best way I learn is just by trying everything so I've just got my my pinned extension list is like crowding out my uh my actual actual spot for entering a URL because I've just got all these different wallets and I'm trying how things work outside of my uh familiar uh evm cozy Nook but yeah scares me and I feel like that's a bit overly permissive but then
again yeah there's a lot of people who are optimizing for just speed and convenience without actually considering the implications precisely um the secure design working groups interest in uh take taking a look at that uh significant 37 for um handoff moment from EA peare to contract what could go wrong it's hugely powerful and hugely beneficial thing but if we don't make sure that we've guarded against um some some worst case scenarios which
a lot of that which feels like it it should for sure happen at the implementation level and is kind of hard to Define at the spec but it needs to be yeah I feel like it needs to be explored yeah I think one one of the challenges with wallet API design is um like we have to reconcile what dap developers prefer with like what's best for end users and the security privacy considerations right so it's like I think that's a key part I that'll be an important part for this working group is to sort of like make sure people are thinking about all those factors as they design these
experiences uh random question do people know about this thing if we're short on agenda I can just randomly ideate out loud be my guest uh this someone just sent me a link to this and I'm wondering
if we should be inviting the the someone from there to come talk to this group or something uh yeah James is is in our um the Discord yes yeah so we could ask him to maybe talk about it next time that seems like loow hanging genda fruit um done okay I have just sort of an open
question one thing I've been keeping an eye on and I'm not up to speed on personally I know our Engineers are a little along is for account abstraction wallets um like I played around with the um the soul wallet beta or Alpha but I'm wondering like what I should be reading for any implications for for signing on that front for anything that we want to need to be doing differently to support uh a whole new crop of uh AA wall it's coming out I don't know if there's resources that I should be looking at that I'm not aware of Beyond just you know eth mags and eips um that's something I'm curious about I think there's a whole bunch of
unexplored design area there because like smart contract wallets don't have to follow uh you know EC DSA they can do whatever they want so maybe the answer is to make you know a plugin for smart contract wallet it's for grid plus and then you can do whatever you want there I don't know yeah that's that's generally where I've landed with stuff is that it seems like there's so much that uh it enables and we haven't kind of landed on precisely how we're going to leverage that with user experiences um it sounds like you could you could do some very effective informational terrorism just opening a a use case
of just just describe some flows that would work for grid and just be like who build this call me if you're building this call me let's talk I should do more of that although it is worth noting that uh I'm am since on better terms with Nick Johnson so I will not be uh I will not be filing any more informational eips and abusing the sanctity of the EIP process so well at least at least a at least a magician's thread come on um and I yeah um yeah well because decoding transactions to display is even going to become way more complicated right oh hell yeah we need that standard yesterday we needed that to pass before 4
337 I mean readability standards I actually think is something that's like unexplored even for just for how eoas are signing today we had a big leap forward with like 712 but I feel like the average user and you show them a a full transaction payload even when the ABI is decoded it's still like they're eyes glaze over at 90% of it they're maybe looking at what's transferred um so I think there a lot of room to improve there I think we're doing that kind of on an abstracted level with like wallet interfaces explaining more um but you can't really do that with a hardware wallet so like because you have to let people see precisely what they're signing so we
don't have the luxury of like kind of translating more about what is actually being signed Beyond a very basic level so another area to explore another reason to be in the working group I guess that actually reminds me about something um vitalic was talking about recently so could and this this might be more of an engineering question but could the the lattice function like a light client and you know prove information about the chain or is that outside its capabilities it it's definitely capable of doing that part of why we have this um physical footprint is we set out to be a like a turn key uh E2 signer and
obviously we called it a Casper signer at the time but yeah I mean we it is pretty flexible we actually ran uh like um we uh cross compiled and ran like 64 prism instances with pointing to an external um execution layer node but it's like well beyond that but a like client I think would be theoretically doable that's also partially why we called it the lattice um our Focus has shifted since but we wanted to be sort of that infrastructure piece like where there was something you could deploy to uh Hardware Network that was all uniform um so yeah like clients entirely doable um right now internally though we're
just kind of focusing on I don't know it's not something we've actively explored but always something we're open to talking about with people if there's other cool ideas that's really cool I did I didn't know it was that powerful that's that's sweet yeah it's sort of like overp for what it is I mean we have like all kinds of additional like iot connectivity you kind of went crazy with like thinking about potential use cases for like a more robust ethereum wallet um but in actuality like we're a small team still so we have to we had to PIR back the Ambitions to like just a core focus on security and now supporting more assets too and being Nimble enough to support new signing standards and keep up to
speed on ethereum too but yeah it's all it's all possible like we had we had wanted to do things like it's interesting to hear about the auto assigning feedback and session Keys before we launched we had um a permissions framework for like you could we had with a software wallet on your phone you could like remotely generate Hardware signatures within specific constraints like I can spend one e for every 24 hours remotely generate a hardware signature and I could revoke that permission whenever we wanted uh just from the user interface the problem with that is that uh we were doing things like that as is ethereum was in
an earlier stage of its life and then as the complexity of different types of signing requests and the things that people were doing expanded tremendously we realized that it was just like impossible to do a secure framework like that so we deprecated it um but still thinking along those lines about ways we can kind of reimagine some processes take for granted sorry a little little off track from uh the core focus of this but it's an interesting area not to worry we're just just hanging out whatever we want to talk about actually on that note I probably have to take off a little early today so I will hop off but feel free to continue
hanging out um I will see you all in a month see you guys on Discord adios