Dean Eigenmann and Corey Petty: Secure Messaging and Crypto Wallets with Status

18 May 2020 · 36:21

Epicenter host Sebastien Couture talks with Status engineers Dean Eigenmann and Corey Petty about building a privacy focused messaging platform for Web3. They discuss the peer to peer protocol behind Status, its dual role as a secure messenger and a crypto wallet, the Keycard hardware device for key storage, and the challenges of getting a decentralized app approved for the Apple App Store.

Speakers

Topics

Transcript

[Music] i'm here with dean eigenmann and cory petty of status and we're going to talk about a number of things one thing that uh that i'm really excited about and that you know it happened recently is that status came out as a 1.0 on the app store uh we we've been waiting for this for a long time the the the the uh anticipation was growing and then finally it dropped i i i opened up my iphone one day and there it was um and so we'll we'll talk about that but we'll also talk about some of the uh underlying technologies um that power

that makes status uh possible and sort of the ecosystem of technologies that are being built by the status organization otherwise known as the status network um so thanks for joining me today guys thanks for having us for having us so let's let's talk about this launch um first congratulations on on launching the app um you know walk me through a little bit of the uh you know the the weeks leading up to the launch um what were some of the challenges that you guys were facing i've heard that there's been some issues sort of getting this through the app store or this sort of thing is that right like were there some some uh some barriers there or was it more technical

i guess there's a a myriad of things right like we started out as this like interface to the three prongs of ethereum you have decentralized messaging centralized storage and the blockchain and we wanted to provide that and uh in the process of doing it we realized we had to double back and build a lot of infrastructure that didn't exist which then prolonged a lot of this stuff like perpetual it'll be soon it'll be soon it'll be soon until we finally got to a point where we think it we think it's at a it's a reasonable state like a foundation right to actually push into the app store and get in people's hands then as you as you should do with any type of product that holds value for for users we got an audit for it

uh and going through a lot of those issues even pushed it back further because this thing one one makes small things turn into larger things in the process of trying to fix them and then you want to constantly think about how do we simultaneously make good like default decisions for users but then give them options to change them when they want to and so and then doing all of that in a way that's intuitive and useful to give them an experience that's i guess on par with any type of regular messaging app because you try to onboard someone who's not into crypto or not into this stuff and they pick it up and like why is this so slow or why did this act the way i think it think it should act it's like well it's everything underneath it works differently but we can't show you that

so it it was a difficult process trying to figure out what's the thing we're happy with because there's so many other things we want to do down the future like down the line uh that need to build off of it and we finally got to a point across the organization we're like okay we got it now let's push it out and start to iterate on on that thing and what's the reaction been since uh since it came out so far uh we've been we've been quite happy with the users who have downloaded it used it given us feedback everyone seems to be pretty happy with like the overall user flow what it can do uh relative to like other wallets i guess it's it's different in my opinion because most other products that are similar are only a

slice of what you can do with crypto they're either a wallet and potentially maybe a dap browser they're a chat messenger uh they're only a wallet to store your crypto they're their only adapt browser it's like we try to provide all of it together and i think that's a new type of application for people in this space to start playing around with that's also hopefully really useful for people outside the space so it's easier to onboard somebody because you can say hey download this chat app it's it's a secure way to talk to me and also you can do these other things that you may want to do later on down the line so i'd like to ask you about the relationship i guess with with app platforms um maybe less so google but more so apple

you know there there have been murders in the space that uh applications with built-in dap browsers have you know struggled to get onto the app store and you know i was i was talking with jason goldberg earlier of pepo and you know he was telling me about the the conversations that he had with apple to um educate them about what they were doing and then finally approving getting the app approved and you know to be honest i was like i want to say i don't want to say skeptical but i you know i thought maybe it wouldn't get through or you guys would have a challenge getting the app through with the the that browser in there because they've been so seemingly reluctant to uh let apps through talk a little bit about that am i right in assuming that that's a

sort of touchy subject with apple we were worried about that uh and i think depending upon when we decided to release we could have had like differentiated results from apple uh luckily we had zero pushback whatsoever uh when we when we pushed the application or like submitted it to them for review it was almost immediately approved uh and i think that maybe had to do with the timing in which we did it uh they weren't looking at it they didn't we they didn't see us we had been in test flight for such a long time that since it was similar under the same kind of app id they're just like okay they finally pushed into v1 it's fine

they were in test flight it should be should be okay but i think we were really lucky uh that um either they've changed their policy when we decided to release or they we just didn't have the attention from them because that's not something we can really control we can't take that out we can't rip that part out of the application and still say we're status so we'll see how things go we definitely monitor it and hope that they continue to have some somewhat of like a open policy on on applications like like anything with a wallet yeah i need d5 app really yeah yeah i think the one place we had an issue was china yep if i remember correctly yeah so i think i think there was an issue with releasing the application in china i can't speak to details on it so they're not strongly in my head but it's

one of those situations where if we can't find a way to do that then we'll find a way to get the software to people who want it uh so they can get access to it and join the network if they if they want to that's kind of the whole goal because like we don't want to be constrained to any specific channel of distribution as long as people can get the application and prove that they got a valid source of it and then educational material i'm making how to do that type of stuff then then we're happy because i guess that's one of the situations that status is always going to be in is proprietary platforms like apple force you to use specific types of protocols that give away various amounts of metadata or information about the users who are using it

for instance push notifications is one of those it's very difficult for us to use push notifications on apple in the process of doing so we told apple a lot about our users who's using it who's talking to whom things like that and it's against our policies and principles so like we have to find alternative methods to do push notifications or not have them which is a very like suffering consequence to the end users because they're so used to it yeah i guess the the issue with with china would probably be the different than the issue here whereas here i think the issue is more about um allowing people to leverage defy and so you know apple not getting sort of a piece of that transaction uh fee or sorry of that transaction uh but but in china it's probably more around

around sort of censorship and and uh i think the problem in china was something about encryption yeah most likely and that's a big thing with a lot of i guess uh large nation like national actors having issues with um applications that don't have ways in which they can seize an object and see the source material and like and then they're in some cases going to the developers and asking them to put back doors and things and that's just like one of those situations that one due to our principles will never do two even if we did you can see it because everything's open source right that may be a problem we have to face in the future say if we have like uh some threshold of success people coming after us trying to get those things done and fine and potentially finding alternative ways of distribution

so what are the what are some of the core features in v1 and you know what's what's in the pipe uh for for future versions can you talk a little bit about the road map i could start with like where it is now yeah uh dean can tell you about a lot of the kind of uh protocol level advancements where we're looking at to make scaling a lot better but uh as it stands today it's it's it's an application putting mobile applications on your phone eventually we'll have other hardware applications like desktop and and web and things like that um it's a mobile dap browser so you know do your defy do any any type of web 3 application it's a browser and a web 3 application a web 3 browser uh and of course if it's

a web3 browser there's an associated wallet where you get to manage your private keys look at your uh online assets for ethereum ethereum based assets for now remains to be seen if we start adding other chains or the ability to use it on on different on different networks and then a chat application so the ability to coordinate um all of this value transaction within a chat context so public chats and end-end encrypted private chats which is done using the signal protocol of open whisper systems on top of whisper which was the original messaging system of ethereum with regards to the the sort of chat experience um

you know there are obviously you can like do one one one-on-one chatting uh you can also do there are also groups uh these are public um are there any plans to to have different types of communication channels like perhaps private groups or the reason i'm asking is like i um i'm i'm often appalled to see the entire crypto space on telegram uh just because like okay the data is encrypted but all of it sits on telegram servers and i find that the use of telegram very much goes against the sort of ethos of crypto right of like on your data on your keys on this and that right and

i i i would really love to see um this space start moving towards like dog fooding right like using tools that that actually like are being built by the space and and sort of adhere to the principles of what everyone here is building um and and for that you know i think status needs to evolve there needs to be like more features and things like this so um with regards to sort of onboarding the crypto space um what do you see is the the the most pressing features that that it needs to add yeah i guess i only mentioned the the things that are currently enabled in the app uh and that is that is like public chats which have a modicum of privacy in them

that's a little more advanced but uh and then private like private one-to-one chats we also have private group chats that's i think as of yesterday um is finished we had it disabled within the application so that we can have uh some a few like user experience issues fixed but it's uh it needs to be that'll that'll provide private group chats but only to a certain number of people because the way it's implemented doesn't scale much like kind of what uh signal has been talking about with their beta program uh signal has as it has a new beta uh private group chat that will scale a lot better ours will be like we're looking for

implementations that'll scale just as well but also decentralized in terms of where those messages go yeah um something i didn't mention about the application is that you can send you can send assets inside the chat context so we can be talking you say hey how much was lunch it's this okay do you take you know eth here you can have that right well we can also do uh incentivized or access restricted channels in terms of you can only intern in this chat given you have some specific requirements uh on chain and you can prove that in various various methods so we'll have like things like tribute to talker you can only contact me if you pay a certain fee so influencers can monetize that that audience or something like

that and there's a lot of other things we can do which we're thinking about but have yet to be fleshed out fully uh yeah i think corey kind of mentioned everything the the with the group chat problem is like the reason why signal can solve it right now or has this new beta program is because they use centralized servers so group chats in this peer-to-peer context are really hard because what ends up happening essentially is i'm sending the message to everyone and i'm encrypting the message for everyone so that has a huge overhead once when there's a hundred people in this group chat i need to send the message a hundred times i need to have it encrypted a hundred times and i need to resend it up until it's been received by a hundred people which is just not manageable so also

one of the bigger issues with with group chats in this space is um private or access who actually has access to the group like we can't modify group chat to remove people because there's no guarantee that that remove um event was propagated throughout the entire network so that everyone knows that for example cory's been removed from a group chat so he could still be eavesdropping in the group chat without everyone knowing it just requires one party to forget and he'd still be within the entire conversation interesting how are you mitigating that so that seems like an interesting design challenge there well right now asset there's no removal feature

there there's no no the group chats i mean with um sending it to scaling scaling group as said right now there's the limit of how big a group chat can be okay we we use these end nodes which store messages where users then go to download the messages once they come online again the problem though is that that has a certain metadata leakage which we don't like because what ends up happening is a user or a server finds out what a user is interested in because the user has to reveal this to get the messages that are meant for them synchronized onto their phone interesting okay i'd like to come back maybe to a bit more of the sort of like the experience around around around status i would love to see status grow as the as a dominant uh messaging

platform in in the crypto space and then yeah beyond the crypto space of course but um what kind of thinking are you guys doing around things like the interesting kind of yeah product product features that uh crypto enables like you know content monetization and things like that i mean are those the types of things that you're thinking about in status or mostly just staying at the messaging layer or are there sort of more like social features content uh monetization features and this sort of thing that we can foresee in future versions of status one of the things that's like is currently implemented and we'll be rolling out like i guess some more robust or a more expanded feature feature is the sticker market um i guess all all

popular messages messengers have realized that stickers are incredibly popular with their users if you look at line that's their main source of revenue um but once again that's like it's this like under control and censored by a specific authority and they take all the benefit like people can make stickers they may get a fraction of the profits of offering that sticker to the community but the company makes makes all that money so we created sticker market as an open market of nfts so um eventually when we open it up right now it's under our control we flip a switch and it becomes completely open uh any creator will be able to create a sticker pack offer it up on an open market and then

set that revenue to themselves or donate it to someone else and potentially there's a couple tweaks in there you can you can choose to send a portion of it to the status network as well and then people and those are both like those are both nfts so owning the the sticker pack is an nfc in itself which can be traded so if you have scarcity around how many of those things can be bought you can then trade that in some market as well as the uh beneficiary is also an ft so who receives the funds when someone buys a sticker pack is also an nft and so that becomes this nice kind of open market that anyone can participate in to give a feature and a messenger app that everyone actually ends up liking right so that could be that could be one kind

of uh example of things you can do socially in these things and then and then it's a lot of like coordination around all of the potential decentralized applications that are being made right what what lacks i think in a lot of the space now is i built this dap how do i build the community around it how do i build people to talk about it while they're using it things like that and so one of the features in in the dev browser is while i'm on a dap i can just push chat and it takes you to the deterministic chat room uh dedicated that to that dap so people can coordinate around it right trying to build things around that coordination i think is really important okay so you're seeing this as more like a level of abstraction above um but that sits outside of status but

that sits in adapt but that interacts with status i mean so as a content producer the the types of things that are interesting to me for status is um you know having the ability to leverage status as a place where i can i can grow a community and you know we're also talking about this with with pepo earlier um not to like push all of my sponsors but like you guys are responsible responses but but i think there's interesting there's interesting dynamics here and and sort of overlapping uh uh conversations but one of the things that i think would be interesting in status is the ability to create a community right like you see on telegram like there's communities out there with you know hundreds of thousands of people in there

and there are people in there that are creating a lot of value for those communities some are not and it would be great to have a a kind of mechanism by which um you know people would be able to uh um accrue value from monetary value uh financial value from creating value for the community so if i'm posting good content then like people can easily uh uh you know send me tokens uh of appreciation and uh and and then that that content sort of uh percolates to the top and um and then the rest you know maybe um not so much right like uh i think there's interesting kind of social opportunities here um

for for the crypto space i think you can think of us as like infrastructure for community building in a lot of ways like when you have all three of those things you can you can provide a way for people to come together and build communities and interact with them because like i mean i i produce that content as well and i would agree with you that the there's a gap between the content producer and the people who consume it uh we hope i hope personally to build uh to build things within the status ecosystem that like close that gap significantly so that not only are they participating in helping in the creation of that content but potentially being rewarded in various ways so you have like a much stronger relationship between the people who

create things than people who consume it across the board not just for podcasts but for whatever i think crypto enables us to do that but i don't know what it looks like yet so we're trying to prevail like provide infrastructure for experimentation within that right so let's uh let's talk about some of the infrastructure uh you mentioned the the vac pdp protocol um can you explain um what that is and how uh how it improves upon like whisper yeah so so vac is the research group where we do a bunch of different research right now focused on messaging we we created a fork of whisper which improves upon all these things so from

our very theoretical model we're able to scale it far further than um it currently scales so in the next iteration currently we estimate with this theoretical model that we can support like a thousand users with our with a vac or with the research we're doing at back we can probably scale it to around 10 000 users so that that's through really interestingly a lot of it has been through small tweaks but we're able to see that like with some of these small tweaks we can like expand the user base quite a bit of what we'll be able to support in the future there's some other that's experimental stuff that we're looking into so like that's i mean that getting into that those

numbers is within a very short timeline of things we know we can do that makes sense that don't compromise our principles uh to get to like a a much larger user base that's reasonable for smaller communities and then there's a bunch of other things that we're looking into to drastically improve that so we can get to like those much much larger communities right because like you can't compete with telegram if you can't support the people who use telegram or or signal or any other any other like messaging application and with every scaling thing that we introduce we essentially have a privacy trade-off that we need to discuss potentially yeah so as i said like we store messages on a server or on various nodes that users pull from

there's a trade-off there because you're losing out on some metadata protection there's light nodes if you have if you're on a mobile phone and you're a light node then a user or a server that relays or a note that relays your messages can kind of figure out um what you're sending you know or um which messages originate from where and can start attributing things like that so we we're very cautious on building these scaling solutions but also like seeing where the trade-offs are at so that we don't sacrifice too much privacy i guess in my in my personal personal view based on what dean just said it's it's i don't think we're ever gonna get away

from having to use specific types of technologies that leak metadata or like compromise and security or privacy and so the goal is to provide all of the options um and allow the user to choose what he needs based on what he feels he's like right like it's it's always going to be a trade-off if i if i want to go to participate in something like that it may mean i and i want to maintain my privacy and security to a certain level it may mean i make a trade-off in bandwidth and computation so we're going to provide you with those options so that you can conduct yourself the way you'd like to while still participating in the communities because in some contexts like when you're you know uh spamming a troll box you don't care right you don't care what's what's

leaked or not because you're it's a throwaway account or something like that and so we'd like to be able to provide those options while also having like incredibly secure peer-to-peer communications where you don't have to worry about what happens if someone finds those messages they don't have an ability to figure out any information from them and that's and in reality i think just based on the way computers work that's the only thing we can do is just build appropriate infrastructure and the protocols for communicating and then give the end user the option to conduct themselves the way they want to do you think that you can leverage the some of the game theory stuff in in in crypto to uh to not achieve scaling but improve scaling

thinking about things like you know the ability to limit uh messages in a chat to you know people who have paid to be in that chat room um you know thinking a bit more far out here but perhaps even uh having uh certain chat rooms or different chat rooms on different shards of ethereum and you know in ethereum 2.0 is that sort of part of the research too or sort of thinking in the long term and how how status can sort of spread across uh the ethereum uh chain so the ethereum chain has nothing to do with the messaging protocol itself and and the way messaging works it is already kind of sharded because a

message doesn't have to hit every node so so there's there is that already where it's like we try to reduce the amount of people who receive certain messages that they don't need need to receive the problem is that takes away darkness right because then i know the route which a message took so i know which parties are somewhat interested in it we could probably get away from that or we can probably enhance that when we later use something like a mixnet that adds darkness again where we can then shard things a bit further or short the layer on top a bit further on top of that which also speaks to your earlier question is like incentivization um we would like to make it useful or

like profitable for people to run nodes in their status network as it stands right now like running a status node is based out of altruism you're routing messages for people um because they want to participate in the network or they want to help um but if we can add that type of thing then it becomes reasonable for that that network to grow very quickly and then engaging your own audience as like as a content creator you can create incentivize channels at specific tiers based on participation um one of the things that uh i'm like you can use nfts and you know proof of ownership there's various certain things to give access to specific channels based on you know tiers of levels so you can end up building your own patreon of some

sort right you do all kinds of things with that using crypto but uh speaking to what you said in terms of the chain that lives on you didn't have to make decisions on like what i guess value chain if you will stores those types of things for incentives and then make those decisions and i don't know how to like of course run ethereum now that's where everything is and that's the easiest way to build these types of systems quickly that will have any type of actual user base what that looks like in the future i can't say because the space moves and grows and changes so fast but uh i'm i'm interested to start experimenting with those things now that we are having user base grow and give us a lot of feedback on what they want

because the longest time without a user base it's hard to know you're guessing now that we can kind of gradually and sustainably grow the ecosystem they're going to give us quality feedback on what they want and we can start really making sure that we like nail down getting into them right okay sorry i neglected to realize that that there are actually like status nodes um uh that that uh that make the the messaging app i think that's a common that's a common thing um maybe we don't broadcast it enough but the status network in terms of the messaging layer is it is its own network of nodes right anyone can build their own and point their status app to it and then have

their own private network of communication run run by run by whisper or waku is what the our our fork of whisper is called and then we integrate various value chains like ethereum as the kind of way to transact within the group of people who are communicating inside of it okay um tell me about some of the other products that um that those that well products and tools that the status organization are is building that are part of the status network that you're particularly excited about i'm a big fan of key card yeah i like keycard explain explain key card too to our audience so keycard is a hardware wallet that's pretty much a credit card

so um it takes that one yeah it makes use of um the new i think it's called nfc right corey i believe it's called nfc yeah it uses it's a it's a java card that also has a near-field channel which is nfc so it's it's what you would normally think about when using a credit card um and it's an open api in terms of uh how we build the applet which is the thing that lives outside of it and that's yours you can have that thank you that so that's an old one it's got a hardware bug we're ordering new ones that no longer have a hardware bug basically maybe the one with our hardware it still works it still works but if you screw up the pairing process you'll break it uh okay other than that it works perfect uh so how does this work

and so what that ends up being is it's a hardware wallet okay it does everything that a hardware wallet does it holds your keys it signs things it holds the keys it holds the keys and signs them and you have you have a lot of control there's a micro controller on this what there's a microcontroller in this which is powered by the secure element chip so it's a yeah standard like it's it's the highest standard of java card you can have in terms of like banking infrastructure right and then allows you to do um you know when they say well i think i forgot who it was the other day they said we're the only we're the only company that uses a secure element we are too it's it is a it's high standard secure element java card chip that can do uh any of the ec cryptography that's

relevant to the most popular chains right how much do these cost i think the price point of those is around thirty dollars i'm not i can't speak to it right now i forget uh definitely one of the cheapest hardware walls that's what's nice about it right that's a commoditized hardware with a tremendous amount of work behind it based on the banking industry we just made an open source api that anyone can use i think uh there's there's a couple other wallets that also implement it you don't have to use status and the ux of it is great so you just tap your card against your phone and you've signed a transaction there's none of that having to plug it into your computer and going onto my ether wallet or something and unlocking and selecting

the account and blah blah blah it's super simple and equally secure cool so you can use this also i guess to to store your like your status identity or so all identities and status are um derived from like hierarchical deterministic wallets right uh and so we have a branch uh from eip i think 1581 which is a separate branch dedicated to non-wallet functionality that will probably be that w's for any like identity level stuff uh and then all the other stuff and all that the master key lives on that and never leaves it so but there's like it's also highly configurable you can it's

open source anyone can do it and the applet is very small in terms of relative to the memory that's available on those things so it can be you can live on alongside other java card implementations for various activities so you can use this for multiple wallets with multiple seed phrases or multiple keys at the same time and so like i'm really excited about how that grows and what grows from its use in terms of people being able to manage keys more effectively like and more cost effectively yeah i mean it's something like this you can put in the hands of just basically anyone right you're comfortable with that they're comfortable with it and also the the cost um you know like hardware wallets are great but you know

at 50 60 100 or more of price point um it's inaccessible for a lot of people around the world i think but also just the sort of the the the user experience interaction between like your app and also the wallet it's the hardware wallet itself it's not super intuitive for most people whereas if with something like this you know all you're using is your mobile app and you just have to tap this thing when you're asked to confirm uh everyone who's used apple pay is easily able to use this card that's cool um interesting um what are you guys most excited about in terms of um the future of status and the status ecosystem

what else from you dean i got a lot there's a lot of interesting stuff we're working on right now uh just that entire like looking at message scaling is that there's super interesting work that's coming out with people we're collaborating with like the nymtech guys who are like i had harry in here veterans yeah he like claudia on his team she's like a veteran of mixedness she's been working on it for 20 years so the stuff that comes out of like this entire like group of people who are working on messaging it's probably going to be super interesting what do you think of elixir um last time i checked their docks weren't really open sourced or anything so i don't know it's kind of

i'm going to say this if you don't open source and are doing all these marketing claims it's kind of vaporware yeah you know once once once once elixir is released and out there and we know how it actually works and can see how it works in practice then there'll probably be a more fledged out opinion that i can give on it yeah i mean we talked to david chum a couple months ago and i mean you know it's david chalm so there's obviously like lots to discuss with him uh but we we didn't really get into elixir that much um mostly for this reason because it's just so so little about it that's been published uh yeah so based on the idea that like we're building infrastructure and each

individual part like kind of team within the sas network is a different play like we're working on every single level of the stack if you will between like new ways to connect computers together it's like the bass bass layer with things like lib p2p and nimbus and how to build those networks so they're very efficient specifically for mobile phones uh i look forward to having like useful nodes uh on phones and then you go up a layer and you have like the development like developer tooling so useful ways for people to build applications that are tailored towards their specific

community or the product they're trying to build using the appropriate technology right so like like you always learn about kind of developer frameworks that make it really really easy and snappy to build something but it's usually very opinionated in how you do it i think again products like embark and subspace allow you to pick and choose a lot of different technologies to get to the same in like product but provide a lot of really convenient ways to do it to make the like the process of building a good useful dap better so that once you have those things you can use status as a way to coordinate around them and like build those communities out and find new ways of like coordinating amongst each other i'm

really excited to see like the amount like combination of all these things come together and what thrives on that and how people use it and build on it that we didn't see coming i think that's that's going to be fun also like usable cryptography that's a big part of this is that if we want any type of real adoption and change towards like people's lives in terms of security and privacy we got to make all the stuff much more usable and that's abstracting things away like a key card to make it intuitive or the interface so that it feels like a chat application but they're also sending value like all this stuff is required to come together to actually make a change and i just i'm curious to see how it goes great

thanks so much for being here today guys thank you cheers