Bringing Web2 Specifications into Web3 / Harry Bairstow
EthPrague 2023 · June 2023 · 12:44
Web3 onboarding remains more complicated than familiar Web2 login, and the talk argues that chain-agnostic specifications can bridge the gap. It compares WalletConnect’s QR-based dapp pairing, ENS names and records, Safe shared wallets with configurable approvals, and Worldcoin’s claimed orb-based proof-of-human flow. Proposals include bridging OAuth 2.0 and wallet standards, reusable cross-dapp connections, and hardware keys or passkeys that could make a laptop act as a wallet.
Speakers
Topics
From EthPrague 2023, hosted by ETHPrague.
Transcript
hi my name's Harry and for those for the few people here that do know me this will be a bit boring but for everybody who doesn't I'm a distributed systems engineer at wallet connect and I work in my free time on open source projects like the ens cards project downstairs as well as stuff outside of web3 like I help build a programming language and I work with the Super Bass team but first and I'm here to talk to you today about how what we have in web 2 and how we can bring that over to web3 in a way that helps people who aren't used to web3 get onboarded but first what makes web3 different web3 has people ranging from college students all the way up to professional mathematicians or even just casual users and they all want the exact same
experience of being able to do everything easily not paying too much for it as well as as well as exploring web 3 is much nicer than web 2 everybody can become a Pioneer just by the fact that they publish a specification work for a big company or even just work for a company in their bedroom web3 is built of a few core protocols um and here they are here I only have time today to speak about a few of them which is ens safe and wallet connect oh and worldcoin but there are many more like lens rweave ipfs and so many that I couldn't even think of them all while I was writing this first there's also organizations like Casa the chain agnostic standard
Alliance who work to bring organizations together to make specifications that work for everyone we'll get we'll speak more about them a bit later first wallet connect while connect is branded as your gateway to web3 and it is a simple solution for connecting mobile wallets to dapps both mobile apps and desktop apps and the flow is very simple it's first we'll talk about their four core values though which is to be secure interoperable user-friendly and multi-chain with the V2 rollout coming to an end this month um every wallet Connect app now has the ability to use any chain they want as long as it supports Cape Town which we'll get onto a bit more later now let's speak about the flow that
wallet connect uses first you have a QR code or the modal which lists all the wallets this is something a lot of people can be used to from applications like Discord or Whatsapp where you pair your mobile wallet once you scan the QR code or select what you want it then connects you into the DAP the DAP gets your address you can then sign messages as well as do everything you're used to Simply with the base protocol we now also have extra apis on top like chat and push which allow you to build end-to-end encrypted chat apps or send push notifications from your dap to users wallets to improve engagement and there's loads more than wallet connector doing that with web remote or V2 and other projects like that but I
don't have enough time to talk about that today and it could be its own talk next up is ens so most of you here I presume know what ens is but for the few that don't is the ethereum name service it takes simple to read names like harryt and converts them to your complicated addresses imagine I was here and I said I'll give you three I'm feeling a little bit generous today but then I you have to explain to me your whole address by the time you've got through it I've checked the capitalizations correct and everything I probably have regretted my decision to give you three and have changed my mind whereas if you've given me your ens name like harryt maybe I would have given you the the like a few thousand pounds and then regret it later ens works very similar to DNS like
everybody's used to except instead of the gtlds the icon issues it's although you can take your gtld from icann and convert it to any NS name you can have sub domains as well so let's say I have mail.harit.eth which runs a website with my web server on it I have social.here youtube.e that runs on Macedon server and maybe I have a treasury with a smart contract wallet on treasury.ht.eath and it resolves somewhere else ens is much better than DNS though if it can get any better you can also set records so for example minus three records for my GitHub Twitter and Telegram but you can set more for other stuff as well as Reddit there's several more
there's lots of standard ones as well for display name Avatar banner and then dapps can even Implement their own should they choose maybe you have a Dap and you want your privacy policy to be a setting on your ens name or some or something else like that it's nice and simple there but if you want to know any more about ens go to ens.domains or Luke should be around I think he's giving a talk at the same time now and he can answer all your questions he'll be downstairs with the ens cards team but there's so much more ens can do that I don't have time to talk about today next is safe a few of you might know as nurses safe it's a project that spun off from gnosis for smart contract wallets and the problem they solve is banking in web 2 you might have a shared bank
account with your friends or for a company but in web 3 that doesn't particularly work with addresses so for example I have 10 000 usdc and I have seven friends I'm quite lucky I have seven friends in 10 000 usdc but we do and we want to split it between us so the first solution we decide is we're going to go three people are important enough they get 3 300 and whatever each but then they work as a problem because if you're one of the four you feel like you're not my friend anymore because I haven't given you any money the other problem is I now want to buy something for eight thousand dollars well I can't do that unless we trust one person with all of the money and also the other four are entirely cut out they now have no say and if one of
these three decides to go Rogue they can spend a third of the money which is a problem if a VC has trusted you with their money and you do something stupid that the VC doesn't like then you have to hope that the people you've given the money to are nice the other problem is my project has an ens name who do I give it to the four that don't have any wealth uh there's no point of them having it and the three that do have it might argue between who gets it but there's a simple solution which is having one address for all seven of us which is what a smart contract wallet solves you have one address that pools everything together and all seven people are in charge of it you might say how do we sign how do we connect how do we spend the money surely
does one person just have the say but no you can set up policies in this case I've said I need at least four yeses and four people have said yes two have said no one person abstained but since the minimum was met a signature was still made and the transaction can continue that allows for voting within the group and is something similar to Wildlife dowels use as well as other voting platforms but yeah you can vote and then a signature can be made another thing is now we have one address so we can have our ens set up so now you want to give me my three back that I gave you earlier you can send it to the project and not have to send it to six different people or whatever but if you want to know more about safe feel free to go to safe.global
um I don't think safe have any Devils here but they are active at a lot of conferences and the last project that I have time to talk about today is worldcoin you might have seen them round with their so-called beautiful orbs the glass circles that are going to take your eyes but the other thing you might have seen is this this maybe this if you're really unlucky or one of the several other captures that supposedly capture robots but I don't know about you when I have to log on to a website and it asks me to pick the traffic lights out of a picture of the sea it confuses me more than it's going to confuse a robot so it's not really going to help World coin aim to solve that with World app currently but it is a open specification that anybody can implement
World up solution is that you have an address with them and you can sign no you can scan it an orb to prove you're a real human connect your phone to also half prove you're a human and then you can go back to an orb once you have the world up scan your eyes prove you're a real human and then instead of having to sit there for half an hour of your life trying to select fish in the sea or needles and Haystacks you can just get your phone back out which you've probably already just use to connect scan a QR code and prove that you're a real human if you want more information about that there is some of the world coin team here in Heath Prague I know DC Builder is um but if you want anything else from that there's worldcoin.org and there are
also active sponsors of other ethereum events let's get back onto what we spoke about at the start which is Casa the chain agnostic standards Alliance it's built it's made up of loads of companies here are just a few that I could find brand Pages for if you're a company in Dava brand assets page nobody can put you in that box please get one but for the people that do here you are there's many more there's ceramic and a few others like that but they all come together every so often there was a Meetup in Lisbon there's weekly calls and they build standards that work across every chain so here's an example of cape 10. it's on channelnostic.org if you want to look at it properly but this is the semantics for having a chain ID and linking it to an address without
having to send separate stuff so my address and the chain ID separately it can be one string which makes it super simple for dapps to implement and while it connect is actually built on top of this which is how V2 supports its full interoperability there's also there's also fun ones like cape 122 which is sign in with X it's built on top of the CV spec that's the spruce ID team worked on but now it's entirely chain agnostic so you're trying to connect on polygon or you're trying to connect on bitcoin for example then you can still use the exact same message you're used to signing with in ethereum except now it's open for everybody so everybody can use it if you want to know more about chain
agnostic you can always go to chainagnostic.org or you can show up to one of the meetings or join their Discord server everybody there's super friendly and happy to help you out but now we've looked at what we have what's next we have we have awesome specifications now in web 3 but there is some stuff that's missing for example oauth 2.0 you're all used to being able to have your Google account log into all your apps with your Google account and never have to get anything out other than pressing one button and agreeing to some permissions right now the equivalent would be signing with ethereum or signing with or k122 but it's still more complicated than it needs to be we need something to at least bridge the gap so a server that supports both
one of The Capes or the series back as well as or2 so then you can have your traditional ol2 services like super bass or Google or tailscale support ethereum wallets without having to put a lot of effort in and then we also need a similar solution for the ethereum Bitcoin everything space so that we can connect wallets between dapps without having having to get your mobile wallet your Hardware wallet back out again the other big thing that could help out with this is web or then you might have heard of it from the Fido Alliance or UB Keys they're Hardware security keys that have private keys on them you can use them you plug into your laptop and you can sign your git commits with it you can do loads of stuff like that but the
other simple thing that it could do is you can derive a ethereum private key from it you can derive and then from that a public key and then you're connected then you would only have to have this plugged into your laptop and you could go to any website and connect instantly with your UB key or for example Apple now supports pass Keys which is also built on top of the werewolf and spec which is even simpler your laptop now has a wallet built into it it has infinite wallets built into it in fact so you can just connect and use the pass key flow and that keeps that simple there's so much more that I could have spoken about today both web 2 and web3 but I just don't have the time so thank you very much for listening and if you have any questions please feel free to
ask them [Applause] thank you thank you Harry any questions I guess if there's no questions I'll be around for the rest of the day with the ens cards team I'm happy to speak about wallet connect or any of the other specifications that I've spoken about so come find me around the event or come find me at the ens cards Booth thank you all very much for listening [Music]