so today I want to talk about a hard computer science problem I want to talk about a vision of a technology that I think would be really cool to have and then I want to explore some of the scientific and Engineering challenges that come up when you try to actually realize this technology for an analogy you know you could imagine 60 years ago having a vision of a technology that enabled any two people on the globe to communicate digitally pretty much instantaneously and then you could view today's internet as some kind of approximate realization uh of that technology and if we think of the internet as you know kind of like a neutral infrastructure for digital communication neutral here meaning that there's you know no one person who owns or operates it I kind of want the computational analog of that I want neutral infrastructure for general purpose computation that's what I'm going to mean by this computer in the sky so in a little more detail while still admittedly quite vague uh I'm after a general purpose computer it's going to be a computer that has its own operating system capable of running arbitrary programs a computer that in effect is going to have its own processor its own State and so on but unlike a typical computer you know computer that's owned by an individual or a company a computer in which somebody has root access I want a computer that does not have those properties a computer that in effect has no owner has no operator literally just like runs on its own by itself in the sky if you will where we can all watch its computations I want this computer to be extremely robust we should have extremely high confidence this computer will carry out its computations correctly and for a very very long period of time I want it so that nobody can tamper with its computation or shut it down finally I want this computer to be open access anybody can use it and by use here I mean you can install programs that are going to be run in this computer's operating system or you can interact with software that's already been installed by previous users of this computer my primary interest in this talk is to think about how you you might build a system that approximates this functionality of course there's another very natural question to ask which is like suppose you could build such a system what would you do with it for the most part I will not be talking about this question except on this slide and the next so there's a number of compelling answers to this question I'm just going to give you one answer and I'm choosing it because it's one that I think is underappreciated in sort of mainstream discourse uh around this technology and in particular if nothing I want to make it clear that this technology is not fundamentally about things like currencies prices Finance Etc the technology is actually about something much more profound which is stronger Notions of ownership than we've historically had for things we've created or bought in the digital realm so to explain let me actually first start with a gift given to us now almost 50 years ago uh by public key cryptography namely secure digital signature schemes cuz I would argue that digital signatures in effect allow an individual to own in a meaningful sense a bit string like say 512 bits representing a public key and by here by the owner of a public key I means somebody who knows the corresponding private key and if you look at the guarantees given to you by a secure digital signature scheme it's kind of a loose analogy between them and some of the property rights that we're sort of accustomed to in the Physical Realm you know think for example about real estate like suppose you just bought a house so in the United States and many other countries you know buying a house affords you a list of property rights one of those would be the right to use if you want to live in your house no one can stop you right you're allowed to do that and that's somewhat analogous to you know if you own a public key meaning you know the corresponding private key no one can stop you from generating valid signatures another one on the list of the property rights uh of owning a house would be the right to exclude which is no one else is allowed to live in your house without your permission and that's a little bit like how no one else can produce valid signatures with respect to your public key unless you give them permission unless you give them access uh to your private key and notice crucially right public key is sort of out there in the world anyone can copy paste those 512 bits anyone can copy paste your public key nobody can copy paste the ownership of that public key because again that's granted by the private key secretly known to the owner suppose now we actually had our computer in the sky capable of doing general purpose computations and so certainly capable of verifying digital signatures well then we can extend this notion of ownership from just public keys to arbitrary data that's stored on that computer in the sky the idea conceptually super simple just allow programs running on this computer maybe the computer's operating system maybe user installed programs running within the operating system they can create pairs consisting of data X and a corresponding public key we know what it means to own a public key and then the owner of X is just defined as the owner of the public key in other words the owner of the data X on that computer is someone who knows the private key corresponding to the associated public key PK so this computer in the sky um is of course perfectly positioned to verify an a test to ownership of data that resides on it simply by uh verifying a suitable digital signature now a question you might have at this point is like okay I guess I kind of see that there's a sense in which I could own data stored on this computer in the sky but like so what what utility could I possibly be getting from that and the answer to that question is going to depend on several factors it's going to be application um dependent so first of all it depends on the program that created this data x with which your public key um is associated and what that program lets you do with X like the program may or may not enforce a third property right a right to transfer it may or may not allow allow you to after supplying a suitable digital signature change the public key with which this data is associated change the owner therefore of this data X and your utility for X May matter on whether you have that right to transfer or not and utility for X could depend on things that have nothing to do with the computer in the sky at all could depend on interactions with the outside world maybe a good example here would be X could be an NF maybe one of a limited edition that was minted by some famous musician maybe there's some sort of special gated Discord server where the musician interacts directly with just a small group of its super fans right and maybe you get entrance you get access to the special Discord server if and only if you own one of those limited edition uh nfts own in the sense that ownership is attested to by this computer in the sky Back To Top