 Great, thanks for hanging with us on day three and we're you port So it's great to be back on stage in front of all of our friends again So much has happened since last year and we're excited to have the opportunity to share an update with you About what we've been doing I'm Michael Senna I'm product lead for you port. I'm accompanied by Reuven heck project lead and Pelle brand guard technical lead And we will spend the next 20 minutes Sharing our progress with you. So if there's one thing that you take away From this presentation It's that we've built a theorems user platform. So we've been working on We're hoping to answer the question What is you port? We've heard it from so many of you and it's about time we share it Thanks So if you're building an Ethereum application and your goal is to have end users We should talk because building user-friendly Ethereum apps is hard You know you need to solve account management and login so account management for users In a way that begins to protect their privacy or protects them from themselves and bad behavior As an extension of that we have key management solutions to help your users avoid danger Also, we can handle things like onboarding new users without ether or gas Also sort of abstracting the concept of gas from end users in general We can also do things like know your user KYC and Reputation systems. So if you're building an app and your goals have end users You should probably think about solving these And we have a comprehensive solution And so at a high level you port makes Ethereum easy You port Ethereum today is not really easy You need to be pretty technical you have to have an on-ramp to acquire ether or gas You need to interact with too many low-level things in a non-user-friendly way So we've built four components the first are all Ethereum app accounts are in one central place for the user. That's easy for them to manage Users can create a complete user profile that they take with them throughout the web as they interact with various applications third You port enables the storage the user-centered storage of credentials and other pieces of signed data That enable a shared user-centric data platform fourth, we offer mobile factor authentication and signatures for everything so basically user clicks a button on your app and We have a mobile signer So I'll pass it over to Ruben and Pelle to explain some more of the technical details and actually how we implement some of these things but Yeah, looking forward to working with all of you Hi, so I'm gonna talk a little bit about how you port managers your users accounts a Uport account is a It's something that we wanted to create a form of permanence with and What that means that it is something that just because you change devices or you lose your phone or Anything else happens that you should not lose access to this so we have a fairly simple architecture with a Your identity itself represented by a very simple smart contract called a proxy This is ultimately controlled by a user's device where the private keys are stored and these private keys never ever leave the device In between then there we have an upgradeable access control system a spark contract that we call the controller And to handle recovery We don't want as I say, we don't want people to lose access to their identities So we have this smart contract layer to be able to handle recovery of your users accounts and identities this allows us to do things like social recovery and Many other future kinds of recovery in the So last year we presented a much simpler model. There was one good test network Rubston we had one account Representing a user's identity you use this for interacting with all the different apps And this was a great way to get started lots of developers used it But we started seeing a lot of changes happening in the Ethereum world So first of all there are a lot more different test networks right now. There's also a lot of private chains Users started having different accounts. There's a lot of more apps in it So this was a problem that we couldn't just solve having a single account identity on a single chain So our new architecture supports multiple accounts and multiple chains and It supports is roughly the same Smart contract structure that we had before but we have obviously Improved our smart contracts. They're way more efficient right now. So we can support easily support having a separate account for each Dapp that wants to integrate with us per user and We can support this over multiple networks The other thing that we learned Over the last year is that users really want to manage their interactions for all the different apps in one place regardless where the app logics run and what this what I'm trying to say with this is app logic isn't just run on in the web browser or On multiple Ethereum chains, they're still web 2.0 server style apps And there's a lot of hybrid apps as well in between a new port actually manages account management for all of these and But it's particularly useful for the hybrid solution in the middle So we do this by having the mobile app Maintain all the different accounts. It's a glue that works for integrating the different apps So for a traditional web 3 app You write your your app just like you would normally using web 3 or any of the cool new developing Developers libraries that out there We have a you port connect library that automatically takes your web 3 code sends transactions to the phone for web 2.0 The process is very similar to say a Facebook connects The only difference, of course, is that there are no centralized servers that you interact with and The identity is always under the control of the end user Finally a problem that we tried to solve was onboarding of new users. There are a lot of non-technical users and even technical users not familiar with Ethereum that are coming in and want to try all of these new things and they at the moment we have to every single time explain about The difference between main net coven ring could be what's gas? How do you fund your accounts all of these things? These are huge problems for most developers when their apps hit real users So the first thing that we're doing to solve this is by having a A much smarter login flow that our first version so a developer can go in and Specify what network that they want account created on and then if the user already has an account For your particular DAP on this particular network that will always be returned If not a new account will be created on the fly And this means that the user never has to worry about whether your app is on ring could be coven main net or even private networks The other big issue is fuel gas is an obvious thing that we all have to pay for our ethereum transactions and and It's a stumbling block that You know, it's very difficult. You want to get people onto your new app and try it But first they need gas that they need ethereum either to pay for pay for the contracts that alone is a big issue there's also the less obvious issue of Lots of non-technical end users following links on Twitter Sending main net ETH to a coven account or coven smart contract So this is obviously a really bad experience so we're solving this by having a all the transactions that go through your port are Automatically fueled by our transaction fueling service and Neither you nor your users have to worry about that and again in the future And I would like to give it over to Ruben So I'm going I'm going to talk about user credentials and I think it's to my concern So for users and after after definitely when we were presented you put in the in the roll from from today And we realized that we got a lot of feedback of From the community how to interact and make it much more user-friendly for for users and more personal So when you log on to a dub and like a simple thing like a Nickname or some a photo make it a bit more personal. So it's all about like how can we give badges or information? Form a user back to the user because we don't want to store them centrally so that's something we explored and we talked a lot with the identity community and We realized there's a lot of opportunities to use the identity from you as an individual as well as from the dub to create credentials in from from badges or attestations to the users It's like some form of like verifiable claims. So what we did next what what we did is we Built an ability for for the user to make this very very easy. So we have libraries now to issue these kind of attestations to the users This can be in form of on-chain as well as off-chain stuff We had the conversation like we're building an identity platform So a lot of the information you get a nickname is maybe less critical But there's a lot of information about my name my birthday that I have a certain degree or maybe have achieved a certain Certificate because I achieved an online course or something else all of this data is something you don't really want to have on-chain Even not encrypted. So we spend a lot of time and our focus on doing this was off-chain attestations in a very very easy way Last year we had an experiment here Piper was doing this Defcon to attendance where people went to him gave him the theorem address and he was basically recording this in form of an Smart contact and we try to do a little experiment later Let's see how the Wi-Fi works, but if you have you ports the latest app You will see a QR code at the end of the talk and hopefully get an attestation about being attended or have been attended here cool, so Obviously after Your credentials have been issued and stored with the user. We need to make it as well easy for The developers to receive this beta data back. So what we built Is a library that you can easily receive this? Credentials and can validate them and that's a very critical and very interesting part because what we allow now to do is that? Anyone can issue that's a KYC attestation So there are enough companies in the world who have done KYC before and they can issue this form to me now in an In a credential and attestation which is signed from the issuer that can be a bank That can be a crypto exchange or anyone else We're now working on the integration of a couple of like KYC providers itself So it's more native as part of this and now what you can do if you have done this once you go through this process And now you go to a token launch platform and you can reissue this information So it's a very very easy much more user-friendly way to to get this validation and can rely on this as a Developer as long as you trust the issuing parties I think that's a very like nice way because now we get a lot of feedback in the community that people want to use this for many other Dapps so whether it's Malanport because you manage certain assets whether it's a poker platform or whether it's No, there's like multiple reasons why you want to know something about the user that does can be abstract It can be he's older than 18 or he lives in a certain state or not in a certain country there's a lot of value in these kind of attestations and it's all like digitally signed to my identity So it's very secure and powerful So ultimately what we built with this is really the the foundation that you create an identity Which is not just a random number like a random address It is now the ability that you have a privacy preserving ability to use as a user Interacting with a DAP so you build the trust Without revealing too much information and that's a very powerful Foundation anyway and also the foundation for any reputation system because think about this if you are issuing to a user that in your decentralized Airbnb he was a good host and he has a I know he can drive a car because a driver license other things all these things are part of a very Good foundation for any type of reputation So if you go in on a certain website the next time and you can issue Transaction of the last hundred Interactions with I know your Airbnb platform you can just take this anywhere and issue this To this new DAP and that will make it much much easier to build digital interaction So what I would show you now hopefully if the Wi-Fi works How digital signatures work so that's something we demoed last year already So we all know that to do any kind of interactions with the blockchain or with a theorem You need to have an ability for signing So pello we mentioned it the the phone has the private key and we have our Architecture with smart networks, but I will try to do and let's see how that works with the connectivity here is to show You how this could look like So and I do it live so I hope it works So what you see here First of all, I show you the application itself. It's very simple. It has at the moment a couple of information about yourself So in this case, we just have us and a phone number. This is data, which is stored on my phone This is not stored anywhere else We have verifications. This is the stuff which we hopefully can give you as part of this Experiment or at least to some of you and you see that you haven't batched you have attended this conference So that might be an interesting thing for next time if you go somewhere and you want to demonstrate this that you I know have a certain experience or you have learned something Or get a discount for for other other means so that's kind of the the verifications As Pelle mentioned, there are multiple accounts. We are support now So in this demo, I just have at the moment a rink of the account on this and what I show you now is Mobile phone up. So what we have here is The mobile Safari. It's just a simple depth and what I do is I connect now my U port with With the stop so what it does it jumps like the Facebook connect into first doesn't work into the Into the app it pulls now information about this So you see the logo you see the Details which are requested from this application and now I can confirm this what you see on the bottom is Is a first attempt to build some trust into this whole interaction what you see? I've done this already 67 times That's important because there's so many websites which suddenly get Spoofed or so it gives you an additional level of trust. This is obviously not the final version But that's the first start. So what you do is you log in and now What it does if the network is not fast enough and will show my name And just a photo. That's something which is just local. This is not need to be stored because it's a DAP It's only in my phone, but it gives the user the right good user experience that he's now logged in and not your friend or someone else What I do now is very simple What we have in here is you can buy a certain set of shares Which just like an example of an interaction with a smart contact. So if I click on buy shares What it does it jumps back into the application and now what you see here is a transaction screen and that's very important So what you see is? The smart contact you're interacting with it gives you what kind of function call you're doing and as well the 56 shares I just requested to buy and that's just very important because at the moment How do you know with a term that's what you're about to sign? And I think that's kind of the the user experience we want to build in that can be in the future Maybe more customized screens and they will look a bit more beautiful. But for now, this is the the starting point So what I do now in the moment? I do approve I need now to use my private key Therefore, I need to put my finger on this and to unlock the key Which is in the secure enclave and do the signing now and now it will take a few seconds obviously So that's kind of what you guys know. So back to the presentation So what we did just recently was in the city of souk and a little project with them and it is a Four-step thing. So you basically you download your mobile application Generate your a digital identity and you go and to a portal on this portal You can enter like a certain set of information about yourself your name and your ID card This is only stuff which you would give to the city of souk as a portal and then the second step you go into the office there with your ID cards and Prove that you are the person who claims to be this so it's a now like a real in-life validation and what the clock then can do is they go to their internal portal and click one button and it pushes a Notification back to you as a user this information now contains that This is your name. You are a citizen of the city and someone has validated So suddenly we create this connection between your theme address and your real person and someone has validated And if you trust that the city of souk's Process or the clerks are doing that only if it's right you can now trust this attestation or this badge from the city of souk So we are working with a couple of integrations like using this souk thing now for The city itself for like simple e-voting so they don't do like voting voting. It's more like Opening times of the swimming pool or something else as a test bed But it's a it's a start and as well We are working with Malin port and others to integrate this information now into our into into their platform Which allows them to trust immediately this identity much more So now That's that's the end of the presentation. This is the qr code if you have you port Try to scan it. I don't know what's the network connectivity here whether it works and now we have live streams So it's not technically attendance, but let's say you listen to this life because in five minutes We will turn it off what happens now you go on this it will ask you whether you are willing to give Us the right to send you a push notification It's a service we operate at the moment and what it does is basically sends a request and In five seconds or so after that and we would send we will sign a signature Or so we will sign a piece of data and they send it back to you as a push notification And that's the batch of attending here in deaf gone and with that I'm closing and please visit our website and look into integrating us. Thank you