How We Think About Storing Crypto is Broken, with Cameron Robertson
ETHGlobal·Fri, Oct 9, 2020, 12:00 AM
Cameron Robertson gives a talk entitled "How We Think About Storing Crypto is Broken," at ETHLondonUK on Saturday, February 29, 2020. ETHLondonUK was an Ethereum focused hackathon that took place Feb. 28 through Mar. 01, 2020 at 8 Northumberland in London. ETHLondonUK was organized by ETHGlobal and a team of hackers, developers and enthusiasts interested in building and creating in the Ethereum ecosystem. For more information visit https://ethglobal.co Video produced in collaboration with @Pillar Project
Transcript
so I'm Cameron Robertson I'm a founder and collaborator on this project called Kong get to what that is in a moment but basically my talk today is trying to get folks to understand why I think crypto is broken and why hardware is one of the big solutions that I believe is important for it so looking at the space of last few years there's been a lot of excitement there's been a ton of speculation but fundamentally the question becomes where the users there's a few million people showing up people registering on exchanges but when it comes down to actually using daps and actually signing up and creating accounts and sending tokens we're kind of far away from the goal of where we where we need to be my biggest reason for that is holding your own crypto is really dangerous the UX of crypto basically says warning you're gonna lose these keys you set up a new wallet on a phone it gives you this cryptic seed phrase every day people out there don't really understand if they lose this they lose their money and so the experience for a person right out the gate who's not technical getting into something like crypto is really really terrifying so basically this brings up the question of how is this shaped crypto and I think it's shaped crypto in several ways number one the primary place that most people out in the world interact with crypto currencies when they get excited by it is through exchanges and frequently they end up holding and leaving their crypto on those exchanges and we sort of know all the historical precedents of why that's risky of course these are a bunch of exchanges where people lost huge amounts of money so the other way that this is primarily shaped crypto is that people don't actually use crypto to buy real things and when they do you look silly because you know whatever it was Bitcoin aetherium mooned after that you should have you should have held on to it rather than spend it and also in terms of like technological development there's still a lot of pressure not about like let's drastically change the UX of what crypto looks like but let's focus on TPS let's focus on making everything faster we need to compete with visa today and my contention is what we have today is actually working fairly well and we can do a lot of incredible things on it and since I first did this talk like defy has exploded and you can actually do all these amazing things on the existing networks as performant as they are today so yes we need the performance but the overall focus on has really sent us off the wrong direction and my big worry for this is that we've shifted into the early adopter phase of crypto we're past the innovators and we're coming up to the chasm and the chasm is sort of like innovation theory this thing that we have to jump across before all sudden Kryptos mainstream and people are using it everywhere and what we do today drastically shapes what its gonna look like when we cross the chasm is it gonna be that exchanges are effectively just the new banks and everything is centralized and crypto is mediated for everyday users or is there some way that everyone can have their own keys they can have the sense of self sovereignty and so we put that question forth and we said well what if crypto acted more like cash now this may seem anachronistic it's like why would we use this old-fashioned thing for something that's entirely about digital online spending like the Bitcoin paper basically referenced spending electronic currency online it didn't talk about physical but cash has a huge number of benefits effectively billions of people around the world know how to use cash since childhood there's no direct transaction cost for the person actually spending it there are in fact costs to handling cash but that's a different different issue transactions are instantly final so we don't have to worry about network congestion network times you don't have to worry about random gas costs jumping and stuff because of those things you can use it to buy goods and services so I can show up to most businesses in many parts of the world and still just spend cash to buy a bottle of water to buy a meal there's a lot of anonymity in cash it's not perfectly anonymous but its built-in it's a built-in feature we don't have to re-engineer it to get there and lastly people understand that if you destroy it you lose it it's gone the value is gone versus if I uninstall a wallet app on my phone and I didn't backup my seed phrase I might lose a whole bunch of money and I didn't realize it cash is still massive even for the US dollar there's 1.7 trillion dollars of cash in circulation I was recently at a banknote conference and the funny thing is even though cash use is declining in first world countries cash demand has gone up so there's actually way more cash which is getting printed and leaving aside a few places like Sweden Norway in general over 50% of transactions under $25 globally are still done in physical cash so in order to understand if we want to make crypto cash we have to think a little bit more about what cash is and what it represents cash is not money cash is a subset of that cash is a part of the money supply and one of the key aspects of of that is trust you have to have paper cash that you can trust in so one of the previous experiments of making crypto cash is let's just print a private key on a piece of paper it works really well for me to hand crypto from some for myself to someone who trusts me because then they can scan the private key and they can pull the crypto off and then that paper is worthless but for actually circulating around between people across multiple parties that obviously doesn't work the first person pulls off the private key and then it's worthless the next stage of this is well what about hardware wallets harbours wallets are really cool they allow you to safely protect the key material but the problem is they're incredibly expensive and they require you to trust the firmware so even if now I don't have to trust that like the person who handed me this hardware wallet has like done something bad to the unit I have to trust that at another point in the supply chain somebody didn't do something to the firmware because it's all malleable someone could have changed the software on it and then there's a backdoor to get the key material out and then lastly there's this thing called Java card or smart card effectively most credit cards that you have in your wallet have this platform running on them or a similar platform it's based off if the original one was based off of Java and they're running these miniature little applets and in kilobytes of memory and people are saying oh there's a great new way for us to make physical crypto but we did a lot of research on them and we're we're not quite convinced that's the case because unfortunately a lot of these Java cards have massive vulnerabilities they're based on this twenty plus year old platform which is fairly closed and they have these dangerous api's like get private key app and I'll talk a little bit about what we've envision is solution so basically what this boils down to is trust and physical crypto is trust that the key material is not leaked and someone else who you've passed it to a previous party can't just steal the crypto off of it while you're holding the the physical note so what we've built is physical crypto cache and we basically have what we call it a house currency it's a demo currency called Kong and what Kong is is physical crypto cash with really high security guarantees and low cost so let's dive into what what exactly crypto cash is well the clear number one thing is it has a printed face value any user interacting with can see the face value they can read it and they can have a high confidence that it's loaded with that amount of face value the second part is it's not a hardware wallet in fact this device here is really an ultra secure key signer but the the tokens are actually escrowed in a smart contract and what that smart contract does is it allows you to set up rules at which point you will actually release the tokens and so one of the most important rules that we've established is a time lock so from the moment at which we mint a kong note you actually have to wait three years before you can pull the token off and and some people would say well that's weird why can't I just pull the money off immediately and the main reason is it's not a prepaid gift card we want cash to circulate and for it to circulate you have to be able to lock something up and say no this is going to be in its physical format and we chose three years the three year number is based on actual currencies in the world where depending on what kind of banknote it is and where it is in the world it'll survive for between 2 and 15 years and then lastly is a secure element chip and I'll dive in a little bit more exactly what I mean by that so what is this kind of crypto cash actually look like well there's a huge amount of historical precedent for this because a lot of money in developed economies a hundred years ago works in a pretty similar fashion the only difference is for these you could actually go to the the Federal Reserve in the US for one five dollars and you could get silver back out so you could take a note and get the amount and silver back out and crypto cash is kind of similar except instead of getting a precious metal you get the crypto that's backing it so what is a secure element chip secure element chips are kind of a broad classification and and that's a little bit frustrating but the the reason why we feel that way is we need some very specific characteristics so as I mentioned there these Java card chips sometimes they're called secure elements but they're highly programmable there's a very small subset of those chips where their functions are fixed and hardware from the factory by that I mean you can't write general code that will run on them the only thing that you can get those chips to do is you can say hey give me a clip hair and let me sign stuff using that key pair and then the chip will not let you actually pull the private key out of it so it's a very very simple functionality very small footprint and because the software isn't malleable it doesn't mean that you have the supply chain attacks where it should be loaded with the correct private key generation software but it's been loaded with a different copy of it so it limits the footprint there but the big challenge for us is that all these chips are based on the NIST backs standard for ECDSA P 256 as opposed to what we use in a theorem in Bitcoin and most of crypto which is k1 and so all that means is you can think about it as a compatibility difference that one of them shows like the PC version and what we need is the Mac version but effectively the great thing about aetherium is we can bridge that via smart contract so what we do with Kong is fairly straightforward we have a chip which generates the private key the secure element that private key never leaves the chip and then we have a smart contract which is capable of understanding the P 256 signatures and saying yes you are the holder of this note I've seen it and after three years because I can see what the current block hash is and that you've signed it you're able to claim the tokens out of the smart contract broadly what we think this is although we've made it for crypto cash to feel like money is an entirely new construct that could be used in all sorts of crypto projects and we're calling it a silo or a silicon lock contract and basically what that means is that you can imagine tying physical represent or digital representations of assets to the physical thing so you can do that for identity you could do that for art you could have art with these chips embedded them or attach them and all of a sudden you're never able to separate the physical and the digital version if you don't want to the nice thing about the smart contract is you can set up all sorts of different kinds of rules so one of the things that we're thinking about with money is a central bank digital currencies maybe if the central bank wants to unlock the money they can but you as an individual user can't and then another case is asset tracking so if you want to be able to track stuff in a highly secure way on the blockchain without having to have any middlemen in between just between the the the chip and the device then we believe that silos are a great way to do that this brings us to the next point of what we're really focused on which is all this boils down to the chip and now we've reduced Trust down to the hardware and saying that the functions of the chips need to be a certain way and the implication there means that if people have demand for this and if they have demand for attaching things to blotching this way we need to have open chips because right now what we have all these wonderful open software libraries down to a really low level we do not have that case for silicon so here's an example that I love it's from a samsung chip from 2011 and effectively at a microscopic level the designers of the chip decided to like embed these designs in which like they don't actually influence the the functions of the chip but it just means that we don't really know what's going on at a really and hardware and the concerning thing about that is even if you have a fantastically audited firm formally verified crypto library in the software if you have even a small number of gates on a chip which have been modified it can dump out its private key material so all of a sudden you can have really great crypto software but if chips are broken or if they've been backdoor engineered all bets are off we're playing around with this in a project called arcs ARX org and the question is can we quantify the trustworthiness of secure elements through crypto economic means it's a fairly intriguing idea there's a lot of problems with it and we're trying to think of like meet mechanisms to do this but the basic idea is if the chips have guarantees that you can never get the private key out but then someone does get the private key out and they can prove it then you can show that on chain and you can create certain certain incentives and disincentives for manufacturers where this is the case so this whole topic I believe is really in critical because it's not just in crypto but it's all about the decentralized web because you look at what Google and Facebook and all these companies do today and effectively their key managers they are managing holding the keys that encrypt all of our data our email our photos etc etc and I think the timing right now is perfect because what we saw in 2009 with Bitcoin was a breakdown and Trust in the financial system which allowed for this entirely new avenue of digital money to take root and I think the same thing is happening as of last year where Trust is starting to break down in these big companies like Google and Facebook creating a massive opportunity for us to really build the decentralized web but in the same way that cryptos shifted onto centralized exchanges I'm hopeful that if we have new hardware people can hold their own keys for the decentralized web as well so quickly just to wrap this back up the the point of this is we need usable self sovereign crypto and and I believe crypto cash is one of the ways to achieve that to onboard users to it I believe ultimately they'll be using digital digital form but giving them a physical touchable money that they can handle first is important to achieve this we need open secured chips so we've reduced trust as far down as possible so the only pieces of trust are the smart contracts which are on chain and open and auditable and the secure element chip which its features are fixed in in hardware and then calling is the first iteration of this so you after the talk you can come take a look I've got some cog notes we're hanging them out as prizes to the the winning teams if you want to get started and learning a little bit more we have a white paper which kind of explains how this works at a little lower level we have an example of our escrow contract so if you want to make a silo it's really easy to get started and that kind of links in to our other contracts like the one that processes the other elliptic curve and then we have a community a chat which is on key base you know a small number of folks are interested in con cash but also asking about how they can build their own silos and and work with technology also if you're interested in making physical crypto we're trying to help do that for other projects out there not just crypto cash but also for NF T's or identity tokens or other things so awesome thanks a lot and if you have any questions just let me know yeah so we started we launched at DEFCON last year and we've been pretty quiet and heads down since then the thing with physical crypto cash is it's a distribution problem you have to get as much out there as possible we've never really thought with Kong that's that's super viable but we've been talking to a lot of other crypto projects a lot of them let's say and like stable coins are fairly interesting the problem is then you get into this issue of are you just making a really high-tech expensive US dollar and so fundamentally there's kind of this balance of like maybe stable coins today are a little too mature before we get into new synthetic stable coins that are not necessarily pinned to the US dollar but have those kinds of characteristics and there's a few those projects they're pretty cutting edge but I don't think they're quite ready so stable coin is one of the interesting areas where we think yes if somebody wants to make a million or ten million of these things that's fairly interesting the other one is is as I mentioned central bank digital currencies which may seem sort of like out of place for a crypto project but the interesting thing there is any central bank when they print notes they do it at a mass scale and our hope is anybody doing this at scale means that we can push for an open chip which is usable for the whole space so one scale project means that we justify manufacturing a chip for all these so they are not in Europe no but they are in Africa in South America and that those projects are launched and and so it's there there are hopes that it doesn't really it doesn't need to be the Euro but as long as one central bank somewhere in the world is interested in this then and the other thing is you can also use the technology for anti counterfeiting but honestly like I think those techniques that they already have are so sophisticated that adding a chip is not necessarily something they want to do so so it for central banks it's not about Kong it's about the technology and so for them it's they have this challenge of central bank back digital currencies are easy for anybody who's a technology native to understand but for for older people who've used cash their entire lives they have no clue about it and you can have this transition phase where you can actually hand out Central Bank digital currencies in a physical form in effect yes yeah so again the key part is the smart contract holds it but if you lose the chip you don't have access to the smart contract but yes so you you could reduce all of this down to a single chip and you don't need the rest of the note you could do whatever format you want we stayed away from smart cards because they feel too much like credit cards and the spending behavior around smart cards and credit cards is way different than cash so we wanted something that felt like that but I say effectively because you could have smart contract scenarios where say the physical version of this this gets destroyed and if nobody's claimed it in 20 years because you can't know if this got destroyed then there's another party who has a first claim on it like a central bank or some other entity we don't like that for Kong specifically because we don't want any case where it feels like you might not be able to get your money with the physical thing but you can imagine you can set up whatever rules you want in the smart contract for ultimately accessing and accessing the the crypto asset you could well only if there's a backdoor to the contract that let you ultimately do that but if the chip gets destroyed then you can't redeem it something I didn't demo in this so this this is actually NFC enabled so I can use my smartphone myself and I can directly challenge the chip to present a signature so that I can authenticate it and so for instance if I was worried about a high-value note let's say this wasn't 20 Kong but it was 20 pounds or 20 dollars I can scan it I can see the the signature I can verify against the public key and say great this is this is working if I scan it and doesn't work maybe I won't accept it awesome all right well thanks a lot I'll be around the conference for the rest of afternoon and yeah thanks for taking a look
Automatic transcript — names and jargon may be misspelled.