Day 1: Dominic Williams (DFINITY)
Crypto Valley Conference 2018 · 20 Jun 2018 · 28:25
Dominic Williams presents DFINITY’s proposed “internet computer” as a protocol-built virtual computer intended to host software and data across independently run mining nodes, with capacity growing as nodes join. He says it would provide WebAssembly back-end support and enable autonomous, token-governed services, while arguing that simpler development could offset more expensive computation and storage. The governance design carries a clear trade-off: staked “neurons” would vote on proposals, while privileged software could change network economics and protocols; its still-undecided scope could include freezing software or exporting private data to law enforcement.
Speakers
Topics
From Crypto Valley Conference 2018, hosted by Crypto Valley Association.
Transcript
[Music] next up we are going to hear from we're gonna hear from Dominic Williams who is president of Definity Dominic hey thanks so this is actually a little bit off-topic I'm just going to give you a sort of general introduction to Definity with respect to ITT affinity is a wonderful platform it's a computation platform that is very lightweight to interact with so it uses
some special cryptography that will enable among other things IOT devices to interact with it very easily but to feel it is a much broader project than that can I ask who in the audience has heard of Definity okay so better than a year ago or something right we're improving so look I for the benefit of everyone you know I'm just going to go through a kind of recap of what to finish ears and you know what what opportunities it addresses and so on so first question of course is what is the internet computer and to understand that you have to think about
what a computer is a computer can be described mathematically right so people like von Neumann and Alan Turing created mathematical models for the describe how computers work and then of course people created physical implementations of computers and that's mostly what we think of when we hear the word computer we think of a server computer like the one up on the screen or a laptop or a smartphone or something like that but actually you know a computer is defined by how it processes instructions and data bought by its physical form and you can also create a computer from a
network of computers right so you can create a single computer from a network of computers and that's essentially what what Definity is yeah so you need to kind of understand how this internet computer thing will come into being who are going to run all these computers that are going to connect together to make this one internet computer than everyone I can you know install software on and host their data and so on in the same way that Bitcoin has or aetherium has miners that you know run these puzzles to try
and to compete to be the next person to create a block Definity also has - it's a different kind of mining though it's not based on you know a competitive process to find the answer to puzzles a Definity mining node looks something like a sort of mid to high end server machine and you scale out your mining operations by connecting more mining nodes to the network and of course you do this so that you can earn tokens if you want to imagine who might do this
there are a lot of for example private hosting centers around the world hundreds or thousands of them and a lot of these private hosting centers have got empty Rackspace because people have sort of migrated across to Amazon Web Services and Google Cloud and similar services so you know what these private hosting centers can do is install Definity mining nodes to make some economic use of their empty rack space and these independent miners don't have to be coordinated by a central party they can put the nodes in the empty Rackspace connect them to the network and the protocol does the job of
coordinating them it's fully decentralized and obviously fault return you know for resistance so the the overall network and withstand some of those miners being malicious and sort of playing around with the protocol or you know some large number of them going offline and the nose joined together and produce the internet computer the Definity has long been pursuing scalability it was founded to pursue scalability so if you go on the internet wayback machine and look at Definity Daioh it's like an old URL
you'll see an early Definity webpage talking about creating a decentralized cloud from a infinitely scalable blockchain and we've been pursuing a specific line of design since early 2015 and we want this thing to scale out so it can host the world's software and data so it's very important that as new nodes join the network the capacity of the internet computer gross so you can install more software run more computations and store more data next question is you know what kind of
software will run on the internet computer so you know on a PC you know you have to run software that you know works with the windows API and typically we compile down to this format called x86 which runs on Intel was we know standard set by intel on aetherium does I think we'll the VM or the affair and virtual machine and so when you write a small contract and solidity it compiles down to EVM byte codes that run on these here and virtual machine and affinity we run a thing called web assembly web
assemblies are very very important in your standards it's actually the first open standard for universal software that runs anywhere it was co-created by an affinity staff engineer and this is going to be absolutely huge not just in relation to affinity but just generally so webassembly is already supported by all of the major web browsers so you can run you can create web assembly binaries from any programming language there has a you know compiler that supports web assembly and you can run them today at native speeds inside of the all the major web browsers so that's a really
huge thing and in the next generation of web applications are going to be built using web assembly people are going to be able to create these web applications using any programming language they like and they're going to run it native speed within the web browser so of course it's natural to ask well where else can you know where assembly run Definity provides the backend support for web assembly so if you like the user experience for systems runs inside web browsers yeah the client that's front-end support Definity provides back-end support it's a rough equivalent to server
software another question comes up is you know where did affinity come from and you know of course it is you know a decentralized networking technology and it really can be traced back to Bitcoin and then through Bitcoin aetherium so Bitcoin was the system that started it all I mean to finish is a very very different thing to Bitcoin but Bitcoin was the project that started all of this and it was the first decentralized network where everybody could share a view of a common state in this case a
ledger so Bitcoin is a very simple thing everyone can see this free column spreadsheet right in the first column you have an address where bitcoins reside like a bit like a bank account or something in the second column you have a balance of bitcoins and in the third column you have an access control script and if you can unlock the access control script you can move the bitcoins to a new row to a new address right what was revolutionary about this is that everybody in the Bitcoin network can agree on the state of that ledger right and previously they would essentially as networks like BitTorrent but there was no sort of shared common state that you can search the bit BitTorrent network to
find a file but nobody has a sort of common common view of like some she no common view of a directory of files for example it's very different thing so Vitalik realized that you know this concept could be extended and be made much more programmable and he sort of leant on some of the previous work on smart contracts and crazy 2 theorem and you know you can really look at the theorem as you know kind of platform for running tamper with software and then in my view saw the small contract is right it's it's software that resides on this kind of sort of tamper proof platform
and you can be sure that when you interact with that software you really are interacting that software and it will run as it's supposed to and update the data as it's supposed to you right so to finish affinity is really sort of an extension of that you know we want to produce something that's much more computer-like and it really is an internet supercomputer that hosts the world software and if any of you've been following developments you know we demonstrated a system for example last october which produces very very fast finality and we have a lot of very talented researchers and engineers
working for us to put a logic team we've got people in palo alto and Zurich in Germany in Tokyo and so on and this has been under development for quite some time so what is the purpose of the internet computer well the basic idea is to upload to cyberspace software data computation and money I said upload to cyberspace because of course the internet computer really is a kind of figment of the protocol right it's a virtual computer it looks like a computer it smells like a computer you can interact with it over the network you can install software on it the soft
you can interact with that software the software or store data on the internet computer there really is a figment of the protocol it doesn't reside in any one place internet computer doesn't have a geography you can't say the internet computers in Australia or something like that right the internet computer just exists in cyberspace and it has a bunch of really special properties and these include things like eternal execution so the internet computer doesn't have a storage API right the idea is you just write software that runs forever and it's a very kind of different way of
thinking about software development then most people are used to so you know in the traditional technology world you you know get a database you get a web server you get a middleware server create some micro services it's completely insecure you put a firewall around it systems are very complex tend to be unreliable certainly very difficult to secure on the Definity internet computer you just write software and runs forever so that's what tunnel execution is obviously the internet computers hack-proof you know it's it's a virtual thing you can't get in get a terminal window and try and get a backdoor into the internet computer and you know get root access
and change the password file or something like that it's just not possible you can create a ton of a software so this we think is going to have a lot of potential in the open sourcing of businesses say you can recreate Internet services that are really open source businesses so you can create an Internet service which is tokenized has a governance system built into it where the token holders you know control the governance system and can use that to update the software right they can you know issue bug bounties and things like that but there's no organization behind it right so we think and you autonomous
software's gonna be huge obviously you know eternal execution provides for a much simpler and lower cost Rd model so we think it's going to be much less expensive to develop software systems on the internet computer compared with the traditional technology stack and finally it can provide privacy guarantees so yeah you can create kind of crypto lock boxes using things like Enclave technology that keep data private even though that it's a public computer and you know you don't know who who's running remaining notes you can upload software right and when you do it configure it so that the data's kept
private and you can even use a ton of a software to create data repositories to which nobody can ever have access you know the data exists inside the repository but no human can gain access to it although you can rip you know run out rhythms and on and so on so worth thinking about you know one of the different sectors that the internet computer can be applied in there are four main sectors the first is private software systems so it's funny how far block chains come but you know Definity
sees itself as an alternative to the traditional technology stack so you know we want to provide people with a way to create you know ecommerce systems HR systems or tracking systems and all the kind of systems that businesses think about creating and the proposition to them is well you know what the ad should the commutation and the storage you know the per cycle of computation per megabyte of storage it's more expensive because behind the scenes of course the internet computers doing all this cryptography and it's wrapped replicating data a large number of times
to make sure it never gets lost and so on but we greatly simplify our D and actually most of the cost in software systems ninety infrastructure is human capital our human costs cost of developers and guys that are administering and maintaining and so on so we can dramatically reduce those costs and then of course once you've created the system you have other benefits and it's on a hack-proof platform so it's much more secure much more reliable in ever you know a tunnel soft a total execution and never loses the data oh it runs forever and you have ways of preserving the privacy of your data so I think sometimes decentralized business infrastructures so a lot of
industries are looking at creating shared platforms that opted to not optimize one thing or another so yes supply chain is a well-known application and it's already a number of industries already creating these kind of systems where you know the movement of goods and services is tracked and they can invite people into you know finance invoices to release liquidity from the supply chain and so on the challenge that has existed in the past with respect to creating these kind of systems is that if you went to a big industry and said look I'm a startup
I'm gonna create this platform which you can all share right nobody would listen to you because they'd be thinking hey hang on you mean we're all gonna we're all going to rely on this platform that you're providing to us and you're gonna have will be giving you enormous power there's just no way we can possibly do that right and secondly of course you know with traditional technology be very difficult to make that kind of platform secure and reliable to the degree that would be necessary right so you know internet computer technology can solve that because you can use autonomous software to you know credit open software platform that has an inbuilt governance system
which is perhaps tokenized and you know you can all kinds of variations are possible you can have like in a Swiss Association right where you know you're voting pairing the association matches the number of tokens you've got and you know ultimately that's used to determine what software updates to incorporate and things like that so you can solve that problem with internet computer technology using a ton of software create an open platform for an industry to share and participants don't have to worry about giving away power to some private company that might behave in unexpected ways in the future and of course you know it's much more straightforward to create a reliable
secure system the third sector is decentralize internet services so this is a particular interesting one again you know using typically autonomous software you know you can you can reinvent Internet services as open source businesses what that means is you know there isn't a company or organization of any form behind these services right the services will be they'll be implemented using open source sorry at the top of a software and there'll be an inbuilt governance system that makes it possible to adopt suffre updates right so that I think will
provide a kind of mutual it--and kind of mutual eyes Network effects to people building on the internet computer because one of the challenges that all startups face it's legal platform risk so an example of that would be zinger so zinger created that very famous social game on facebook called farmville and they were growing very rapidly and I think the IP owed and they're worth five billion dollars or something and then Facebook decided that they wanted to change the rules that social games companies used to you know promote themselves on the platform and pretty much over overnight
you know the rug was pulled from underneath zinger right and yeah they would no longer the force they were before and that's actually a very common thing in Silicon Valley when you see that kind of thing happening all the time it's called platform risk when Internet services are reinvented as open-source businesses using autonomous software they can provide much better guarantees about the api's that they provide to other systems so you know innovators and entrepreneurs will see this and they'll realize that if they build on this more open ecosystem there's much less chance that the rug
will be pulled from under them there's also things like you know dating apps where people forget you know all of these in potentially Barriss embarrassing information is stored on these central servers that can easily be hacked and to have in the information leaked onto the internet so you can combine usage guarantees provided by autonomous software with crypto lock boxes that ensure that for example in the case of internet dating app that embarrassed potentially embarrassing chat information doesn't come out into the public domain through a hack and the real interesting thing about this lock box technology as you can although the
data is safe inside no human being it can be designed so no human being can ever get the data you can still run algorithms inside the crypto lock box so you can have algorithms that run looking at the chats looking for keywords and you know so they can match people better but nonetheless you know no human being can ever retrieve that information that embarrassing information final sector is of course decentralize financial systems you know Definity isn't designed to be a platform for IC O's but no doubt they'll take place you know I think we're going to see the emergence of you know potentially no mass-market borrowing and lending
systems prediction markets insurance token exchange is that kind of thing so yeah you know I large now refuses next question how is the network controlled and so we've seen a lot of problems related to governance and there are a lot of different views there are certainly some merits to the Coda's law approach but we believe that you need to have a very far-reaching governance mechanism running on the network and you can read about this online if you're
interested is that we have user thing on the blockchain nervous system and very simply it involves people creating what we call neurons by staking definitive once you created in your own you can't get the definitive back without dissolving than your own which takes a year the neurone participates in voting the voting power than urine is proportional to the number of the finishes locked inside of it you get rewarded for voting but of course voting can be a tiresome thing all these proposals come in with different topics like you cannot makes cryptography and so on and so what you can do is you can configure your neurone to vote automatically it's actually run from your smartphone or a laptop and you can
configure you and your own to vote automatically so you know you can say on cryptography I don't anything about cryptography so when a proposal comes in with a cryptography topic tag you know I want to follow these five neurons and you know that you have the addresses of these neurons people have not advertised them on their Twitter profiles and reddit posts and things all follow these these five neurons if three of these neurons vote adopt adopt if three of them vote reject project if new these things happen after a time out reject right and this blockchain nervous system has sort of privileged software running on the internet computer that can you know reach into the internals of the
network you know change the economics it can manage network structure it can upgrade the protocol but it calls to do things like freeze miscreant software systems that the internet computers hosting so let's say you know people became aware of an Isis slave market running on the internet computer someone could put a proposal in this is Anna Faris thing freezer and and if that proposal goes through the blockchain nervous system can freeze in the ferry system the scope of the blockchain nervous system hasn't been fully decided but it would also be the case it would also be possible to for example have software inside of
these cryptic crypto lock boxes that is blockchain nervous system aware so if the blockchain nervous system says dear naanum eyes this software systems data the sort of special software inside of the crystal orb boxes could actually export that data perhaps encrypted to the public key of some law enforcement body so in in that case you know the butcher nervous system will become a kind of ethics committee you know deciding what a nefarious system is or who who should have their anonymity and or private data exported so finally now who is pursuing this divinity is actually a not-for-profit foundation
that pursues scientific research engineering you know and when the network's up and running in a threat mitigation and network support so we've got quite a big presence in Switzerland we've got people here in Zurich neuchâtel lizanne we've got a big research base in Palo Alto in California so I spend a lot of my time people in Cambridge Tokyo and is it kind of said we have some a slight different mentality we believe that you know if we're going to create an internet computer that's going to support the world's software I run the world software there needs to be you know a
commensurate organisation Stan behind that network right and so we've got this kind of concept we call it there's a bit of a silly name like NASA for decentralisation but we're building out you know kind of very large and competent organization are they very large I mean not in terms of technology giants but in the crypto world so you know we we envisage that when the internet computers you know running a scale you know the definitive foundation will employ hundreds of people and you know we've been lucky we've managed to you know recruit some very talented and senior engineers and researchers so you
know that's on the divinity website if you're interested but you know if you're interested in working for the finish you go and check out the finishing jobs page so lastly anyway this is me this is a little video and I took it three weeks ago in Palo Alto it's the definitive test network with the 400 odd computers distributed around the world and I don't know if any of you actually follow the tack but there's this thing called threshold relay and the probabilistic slot consensus and the nodes which a flashing green the current threshold group which is sort of collaborating to produce the next random
number which drives the whole protocol suite anyway I think that's it for me [Applause]