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

Loading player…

Integrating with Dapper The Best Way to Blockchain

ETHGlobalWed, Oct 9, 2019, 12:00 AM

The team from Dapper Labs explains integrating with Dapper at a workshop at ETHNewYork. ETHNewYork was a hackathon organized by ETHGlobal and a team of hackers, developers and enthusiasts interested in building and creating in the ethereum ecosystem. ETHNewYork ethereum focused hackathon took place May 8-10, 2019 at New Lab at the Brooklyn Navy Yard. For more information visit https://ethnewyork.com/ and https://ethglobal.co/

Transcript

hi everybody so today we're gonna talk about integrating with dapper the best way to blockchain so hey I'm Lynn these are my two little NF T's I am a developer experience engineer so essentially I work with doctor labs to help developers have a great experience with our products I support crypto kitties I support that for and today we'll be talking about that but I'll just run through sort of how it works what it is and how you can integrate with it to lend that bounty and also for so we identified a few problems that blockchain technology currently offers in ways to access the blockchain so we believe in blockchain for all and one of the things that we saw as a problem was accessing the blockchain it's hard it's a lot of steps and for end users sometimes those steps are deterrent to getting on the blockchain and playing games we also saw that it's complicated users don't know what gases they don't know you know what private keys are what a seed phrase is and they just want to play a game and users don't trust the trust lists all the time what does trustless mean you know how is their data protector how is their information their entities and all those things protect it so we solve those as three different problems that hasn't been addressed with adapter our vision is to access the centralized applications and planked excuse me playing with digital assets is still too much friction so we want to reduce the barriers to entry to make blockchain easy and accessible to all three of our pillars are easy safe and connected so how can we provide users with an experience that's easy that's safe and that connects them to the blockchain our mission then is to give blocking users as safe as an easiest interface to access smart access we're excuse me smart assets apps in each other in a global in decentralized web so what does that mean we want everyone to get on the blockchain we want it to be easy we want it to be safe so what is that / how is decorate dressing these problems diaper makes it simple for users to enter and use the watching how do we do that so we don't have private keys and we don't have to see phrases we are a smart contract wallet and we do things a little differently but is very simple for users and it provides a beautiful user experience dapper can protect users from losing their digital stuff they have a recovery kit and they're able to recover their assets and have them with them at all times and Deborah enables developers to pay for users Network fees so they don't have to worry about it this is something that we're doing to help save money so why should you use it so dapper is powered by a smart contract we store assets in a smart contract wallet and we do a little differently we don't store it on a device like other products so in this way we're able to have users have complete control over what they own we want users to be able to feel like they have their assets they're able to access them they're able to join into another game and sort of play and go from there and we offer a number of account recovery options and easy access we offer recovery without having to give up keys so the way in which we do recovery with a / is not to rely on a device or private key so no more private keys no more seed phrases we have a rescue kit that is downloaded and with that rescue kit users can easily recover their wallet and we have adjustable account and security preferences that users can use just by clicking these settings we're also working on multi send this is a feature that is coming soon but multi sin will allow users to send multiple transactions so integrating we really want our users to have a very quick and easy experience easy so integrating with dapper is very simple we have two VIPs that we currently follow 11:02 is one of the e IPS that we need to have compliance with and this IP speaks about user approval so we want users to be able to say hey when we go to this website you know you're allowed to access my wallet my data right now that's a little different with other while it says on the market and we wanted to address that issue so we re IP 1102 compliant you can learn more about the IP 1102 here if you want to take a picture we provide back inside validation per e IP 1654 so in order to integrate your if you are choosing the path of back in signed validation we have a JavaScript and go flow that you could use to integrate your backend preference we also don't insist to use web 3 but if you choose to use it you need to use version 1 point something with something come on in welcome welcome this is a workshop we're talking about integrating with that beer welcome no worries and here's a bit of information about both VIP 1654 in 1102 so essentially once you've integrated and are compliant with both the IP 1102 as well as 1654 you'll be ready to integrate so tapper I will I wanted truely to open up the floor to have more questions and sort of what is it how do we use it how do we integrate so I'm happy to kind of go over a review I have both author and Jordan here to answer questions as well kind of just wanted to go through here it is and here we are to answer your questions about it so what questions can I answer for you about a spurt contract wallet hi how does the rescue kit work yeah so the the rest the way the rescue kit works is it's it's not part of our regular authorization system so we have we have support for multiple devices which is another kind of cool feature of the smart contract you can have one address and one you know one set of assets that are owned by that address but access them through a bunch of different devices and a bunch of different keys on top of that there's one special key that's the recovery key and when you perform a recovery through the rescue kit it will invalidate all your existing devices so this is the case where you know you lose them or they become compromised so it invalidates all your existing devices and then it sets up one new key on one new device and then that's your new key the only new key going forward that has access to the wallet and the way that the rescue kit plays into this is we use something called a counterfactual recovery so that recovery key when it's gener it's generated when the wallet is created and it signs a transaction and the transaction says to the wallets like hey perform a recovery and knock out all the existing devices and create and set this new device as the only one but we don't actually submit that transaction we kind of hold it offline and in addition to that recovery transaction which we call it which is like an ephemeral or counterfactual transaction we have that that key that becomes the new single owner key of the contract and that is what is stored in the rescue kit so the users have one side of the puzzle which is the backup key which is encoded in the rescue kit and kind of from the PDF format if you've used one password it's kind of a similar idea and then we also have the recovery transaction which is stored on our server so that when the user requests that we do a recovery for them we can go through the process because it's a bit of a process you have to like you have to fund the recovery account send the transaction a couple other things it yeah it is similar yeah most smart contract wallets support that it's one of the benefits of a smart contract wallet yeah not exactly so one of the main kind of design axioms that we kept in mind while designing dapper was we didn't want a single point of failure because with existing typical wallets you have a key pair if you lose it you're done which is a pretty bad user experience so we kind of applied that we applied that to the the standard like device keys as well which I can go into as well but in the case of in the case of recovery if you compromise the we called the backup key which is that key that becomes the new authorized key on the wallet and that's what's stored in the rescue kit if that gets compromised then the attacker can't actually do anything with that because it isn't yet an authorized key on it on the wallet until the recovery transaction is executed so what you can do at that point is you can from one of your authorized devices you can set in your recovery key go through that whole process create a new recovery transaction a new backup key and then your your wallet and like your security posture is back into a good State they don't have to but that in some sense is having more than one device kind of mitigates the requirement of having a rescue kid because in the same way that if you have one device and you lose it you can use the rescue kit if you have two devices and you lose one you can just use the other device right but the rescue kit is kind of a catch-all and also works as a second factor or recovery factor if you only have one device sure like the 1604 yes yeah so this is specifically oh sorry 1604 is for signing off signing up like there beautiful 16:54 yeah is is signing up to an account by signing a message 11:02 is asking adapt or sorry adapt asking you for permission that's why I'm talking to go around yeah yeah yeah okay so we require at the front for adapt to say can we access your wallet and then we required that sorry just took it over I'm at the end live 16 for people the process of of integrating that the so the UI kind of looks like you know when you go to a news site and they're like hey I want to show you notifications and you say please don't show me notifications it's kind of like that so without 1102 when your DAP just immediately has access to the web three provider but with 1102 UF do you have to like request access first so web the web three provider won't won't expose any accounts to you like any account addresses it'll just expose a way for you to request access to that and then once you've requested it once then you have access to it for the foreseeable future it's I mean it's kind of a it's kind of crazy that we didn't have it before honestly like people could you go to any website and they could just immediately track you based on your your wallet address and like look at how much money you have and what stuff you have yeah it is yeah it's against it's pretty crazy no way feel free so if you already if you're already set up to work with web 3 and sorry I didn't quite catch that Oh like if they don't have a wallet yeah totally yeah it exposes a very similar interface to meta mask a web 3 provider yeah it doesn't work in the u.s. oh do you try to oh yeah yeah sorry about that yeah we'll definitely catch up with you and troubleshoot through that at the end of the day we want to encourage bak to you for all we went in users to have the easiest and quickest way to get em to the blockchain without a lot of steps without a lot of going back and forth our end goal is to how watching to be more accessible to end-users and for people to build amazing games and experiences that can be played you know without a lot of friction I guess yeah sorry yeah that was that was my bad I had the wrong room [Music] you don't besides those two things that we mentioned yeah and they don't 16:54 at least it doesn't apply to every desk you don't have to do anything else data yes or maybe we should you should go back to that spot it's no work in just a second we'll tell you about them but essentially we look for a IP 1102 and 1654 compliant so if you are compliant with the windows that enable that they're requiring user approval javascript or go on the other side and that's I mean yeah 11:02 is pretty straightforward 16:54 is slightly more complex but it only applies if you are you know creating an account based on somebody signing a message which not every DAP does but yeah we're happy to go over either of those oh nice there it is yeah yeah you can grab if you if you do need 11:6 1654 yeah just grab us and we can help you figure that out or 11:02 we'll be here all weekend and we're here to cheer you guys on to help you with your integrations and that sort of thing so if in fact you are interested in that and wanting to learn more about how you can integrate with your that to provide your users with the best easiest and quickest experience on the blockchain and we will be walking around all weekend so please feel free to find us feel free to connect with us if you try it out would you like to speak about bouncing information and we sent an email with our dapper developer kit that goes over both the bounty we provide a staging build for you all to try out dapper interface and you can get information on a bounty a hack documentation and more information about wow how will we do we'll be doing them back and snapper any other questions that you guys have curiosities anything like that the email came to the email list of those who are hacking yeah and we're happy to provide information if you just come to our booth we can help you out as well no worries I'm happy to if you can come to our booth we can send you out an email any other questions all right well thank you for your time we'll be here all weekend if you should know that before everybody goes I'm gonna quickly plug my own talk which is happening tomorrow I'm gonna go into like all the technical details of the smart contract so if that interests you at all it is at 4:30 I believe we can check the schedule 4:30 and enter Amida which i think is the room right over there yeah so feel free to yeah we have we have a bounty so if you would like to integrate with dapper it's really straightforward like Jordan was saying for many dabs there's nothing different you you have to do but if you use it in your demo we are having a bounty for the first place we're judging and we're giving $1,500 for the winner of that category so it's really not a lot of work and it gives a better user experience for every user that tries your DAP so yeah do that

Automatic transcript — names and jargon may be misspelled.