Dfinity’s Dominic Williams talks about how Dfinity is an internet computer that can host our software and data, instead of it being held by centralized services. He describes the consensus algorithm, threshold relay, and why he believes Dfinity will be much more secure than Bitcoin. We also dive into Dfinity’s governance mechanism, the “blockchain nervous system.” Williams, who has written about the “AI-managed environment provided by the blockchain nervous system” and talked about how Dfinity upgrades the “code is law paradigm” to “the AI is law paradigm,” explains on the show that the blockchain nervous system is not an AI and is manually controlled by users.
Thank you to our sponsors!
StartEngine: https://www.startengine.com/unchained
The Sun Exchange: https://thesunexchange.com
Episode links:
Dfinity: https://www.dfinity.org
Dominic: https://twitter.com/dominic_w?lang=en
Dfinity as decentralized cloud: https://medium.com/dfinity/the-decentralized-cloud-vision-of-the-dfinity-blockchain-f68449c49be2
Dfinity consensus algorithm: https://medium.com/dfinity/dfinity-white-paper-our-consensus-algorithm-a11adc0a054c
Threshold relay: https://dfinity.org/pdf-viewer/pdfs/viewer?file=../library/threshold-relay-blockchain-stanford.pdf
Posts where Dominic has described Dfinity’s governance system as an AI:
https://medium.com/dfinity/dfinity-in-a-nutshell-a-non-technical-introduction-ec45ec5967c1 https://medium.com/dfinity/the-dfinity-blockchain-nervous-system-a5dd1783288ePhi: https://dfinity.org/pdf-viewer/pdfs/viewer?file=../library/phi-dfinity-extended-v2.pdf
Transcript:
Laura Shin:
Hi, everyone. Welcome to Unchained, your no-hype resource for all things crypto. I’m your host, Laura Shin. If you’ve been enjoying Unchained, pop onto iTunes to give us a top rating or review. That helps other listeners find the show.
Sun Exchange:
Sun Exchange is a solar power marketplace for the crypto economy. Sun Exchange members all over the world are earning crypto currency for helping to deliver solar power generations to businesses and communities in emerging markets. Visit thesunexchange.com to start earning solar-powered money today.
Startengine:
Startengine is a regulated ICO platform with a community of 155 thousand plus registered users that’s focused on issuing tokenize securities. Go to startengine.com/unchained for a 20 percent discount on setup services to launch your regulated ICO. This is not legal advice.
Laura Shin:
My guest today is Dominic Williams, president and chief scientist of DFINITY. Welcome, Dominic.
Dominic Williams:
Hi, Laura. Thanks for having me.
Laura Shin:
Let’s start with a simple question. What is Dfinity?
Dominic Williams:
So, Dfinity is a project to create a network, open public network, that will produce something called the Internet Computer, and our ambition is for the Internet Computer to host the world’s next generation software and data.
Laura Shin:
And what does that mean to be a world computer, I mean we have computers now that host software and data?
Dominic Williams:
Sure. So, it means a lot of things, actually. So, to begin with, it introduces the idea that the internet itself will host software and data as opposed to you know monopolistic cloud hosting providers like Amazon Web Services or Google Cloud or Microsoft Azure, so that’s a big change. So, the idea is that rather than building your systems on the back of another company’s infrastructure, you actually build your systems directly on a public infrastructure, on the internet itself, using the Internet Computer, so that’s a big change to begin with, but the Internet Computer also brings some new _____ 00:02:07 of platform, so actually, it greatly simplifies the development of new software systems, and this addresses one of the biggest problems with the existing technology stack that it’s very, very complex, and you know, if you look at the balance sheet of most IT systems in use today, which represents the total cost of ownership, the vast majority of the cost is actually the human capital involved in developing systems and maintaining them and administering them, so we believe we can greatly reduce that, but also, of course, the Internet Computer is based on crypto technologies, so the Internet Computer itself is a hacker-proof system, you can’t hack the Internet Computer, and if you write software that doesn’t have bugs, then your software will also be hacker proof, so it addresses the need of security.
It also has a design that it shows that applications running on it are always available and never lose their data, so that’s another big advance. Systems running on the Internet Computer are highly interoperable. We have mechanisms that enable developers of systems to preserve the privacy of data, right, and that could mean anything from private company documents to user data, and we enable people to do that in a way that doesn’t involve them doing anything special or having to write cryptography themselves, and we also support a new kind of software called Autonomous Software that we believe will provide a basis to reengineer internet services as we know them today.
Laura Shin:
I want to unpack a lot of what you said here. You were talking about how this Internet Computer would provide a lot of services that are now offered by businesses, and I know you’ve talked about something called Open Decentralized Business Infrastructures, what is that?
Dominic Williams:
Okay. So, you know, on the one hand, the Internet Computer we believe will provide a better way just to build private business infrastructures, but we also support a new kind of software that’s autonomous, and this makes it possible to create systems that don’t belong to any individual or company, they exist independently, and essentially, these software systems have an inbuilt governance system, which is tokenized, that is used to incorporate new updates into the software, but effectively, you’re applying the opensource software development model to a running service. Okay?
So, sort of Open Decentralized Business Infrastructures is one of the applications of this technology, so there are many industries that would benefit from sharing a platform. A commonly talked about application is supply chain optimization. As it turns out, there are many, many applications where you can create a platform that’s shared amongst the participants in an industry to deliver efficiencies or do functionality.
Laura Shin:
I wanted to ask you also, earlier, you were saying that DFINITY can replace some of these human capital processes or functions of businesses. One of them that I noticed you mentioned in Blogpost was R&D. How can a machine do R&D instead of a human? I was confused by that.
Dominic Williams:
Oh, no. We’re not suggesting that the machine does R&D at all. So, with respect to private business systems, and this is several applications, so you’ve got like private business systems, you got DBIs, which is really a very corporate application, and you have internet services, so we want to reinvent internet services anything from like Salesforce through to an _____ 00:06:00 app, but with respect to reinventing how people build software systems, primate software systems. DFINITY, if you like, strikes a kind of grand bargain, okay, so the Internet Computer works by applying advanced cryptography, distributed computing, advanced _____ 00:06:19 machine size, all kinds of things, right, and under the hood of DFINITY, there’s a lot more computation going on and there’s also a lot more replication of data, so with respect to computation, as soon as you introduce cryptography, you’re already going to be doing a lot less processing, right, it’s quite compute intensive, and also, DFINITY under the hood is running symmetric replicas of applications, right, so if you call a function in your application, well actually, inside the DFINITY network there are multiple instances of your application all running the same function at the same time, and if it’s generating data, you know saving the same data to the state, and that’s how we make sure that applications are always available that don’t use data, so as a result of this, the DFINITY network will cycle-for-cycle and byte-for-byte is more CPU and more storage in any task, okay, but we think the simplification of the platform is worth it, so when you create software on DFINITY, most people I believe are using a new language called ActorScript, which has been created by one of our staff engineers, who created WebAssembly. I don’t know if you’re aware of WebAssembly, but it’s the sort of next generation of the web. It’s already in all the main web browsers.
Laura Shin:
Yeah. We’re going to talk about that in a bit.
Dominic Williams:
Yeah. It’s an Internet Explorer, Chrome, Firefox, Safari and so on, and he was the co-designer of that and continues to do the _____ 00:07:51 process, and he also is an architect of V8, which is the JavaScript engine inside Chrome that also runs this thing called Node, which is the most widely used backend platform of the world apparently, and so, you can imagine that you could write this ActorScript inside of the web browser, you know it runs on the WebAssembly virtual machine inside the browser and that this ActorScript would be able to sort of seamlessly call into ActorScript running on the Internet Computer, and the Internet Computer itself doesn’t have any kind of storage API. There’s no database API. There’s no file storage or anything like that. Actually, everything is just kept in software, so the idea is that you know when you’re writing in the backend of your system, you just write the abstract logic, and you keep your data in data collections in memory, and this basically represents absolutely colossal simplification when you’re developing a new system, so today, when people create systems you know if you’re using software as a service product like Salesforce, of course, you just connect it over the web, but if you want to run your own system or create your own system, you’ll have a database, right, that needs backing up and replicating and hot spare and all that kind of stuff. You’ll have probably a Middleware server with microservices or you’ll have maybe a MEM cache server, you’re going to have web servers, and again, you know you need load balancing, _____ 00:09:21.
Laura Shin:
And that’s what DFINITY can replace?
Dominic Williams:
Exactly. So, you’re going to have business logic that’s distributed over that whole system over multiple components, so if you think about it, you know in that kind of system, there will be some logic inside the web server that generates the pages. There will be some logic inside those microservices. There will be some logic in the database. Data itself is pretty distributed. And all of these components, by the way, fail independently, and so it’s a complex thing to put together, and of course, it’s completely insecure, right, there’s no way you can make that secure, so what you do is you surround it with a firewall and you hope that the firewall will keep everybody away from your insecure system, but sadly, a firewall isn’t much good these days, and you know I can be onto Fortune and put a Bitcoin bounty up and someone will get me into any company of my choosing if I want, not that I do want, but you know, so firewalls don’t really work that well, so you’ve got a system that is inherently very difficult to develop and then tame, and you know, many software engineers will tell you that sometimes they despair of their job because most of their time it’s not just writing the logic involved in the system and creating a great user experience, most of their time is involved with trying to make these different pieces talk to each other and there’s inherent complexity that’s involved in today’s IT stack.
Laura Shin:
Yeah. I wanted to ask you, you mentioned your customers, who is using DFINITY’s technology now or who are your ideal users?
Dominic Williams:
Well, I mean DFINITY is currently under development. I mean there’s a test at work and people know it’s there at the moment. It’s a complex project, so we are developing multiple technologies and parallels, so for example, when you write software that runs on WebAssembly, there’s a network that forms computations and stores data and there’s a test network with some thousands of _____ 00:11:18 running at the moment, and you know, we’re pretty clear on what we need to deliver.
Laura Shin:
Well, you hinted that Fortune 500 companies are using DFINITY’s technology.
Dominic Williams:
Yeah. We’re working with several companies that are interested in the technology, but the network is not live yet, so it’s not possible to run a system on it yet.
Laura Shin:
So, do you imagine that it’s going to be more enterprise but like is that your target?
Dominic Williams:
No. I mean so the Internet Computer is a much broader thing, so the purpose of the Internet Computer first is just to reinvent the way we create a software system and also reinvent the way they’re hosted, right, so we want the internet itself to host software and data, so that’s a big change, and the whole world runs on software, so you can apply this platform to many different needs, so one of the most exciting applications of the Internet Computer is the reinvention of today’s internet services as open source businesses.
Laura Shin:
Okay. So, I want to get into more details around DFINITY, but before we do that, I wanted to ask you about your background. What did you do before you started DFINITY and how did you come to start it?
Dominic Williams:
So, I’m a serial entrepreneur. I’ve been in the tech industry for quite a long time. My last venture was a computer game. It’s an MMO, so it’s a massively multiplayer online game and it grew some millions of users, and now, I got particularly interested in distributed computing, and I actually created one of the distributed infrastructure that supported that game, and I’d had some prior exposure to crypto. You know, back in 1999, I’d been using this library called Crypto + + created by Michael Wei Dai, and I’d come across this paper called B-Money through that, so I was kind of interested in the area, and then in 2013, when Bitcoin went through one of its dramatic price rises, my attention was drawn back to it, and in 2013, I switched over to crypto full time.
Laura Shin:
How did you come up with the idea for DFINITY and start it?
Dominic Williams:
So, at the end of 2013, I was poking around looking at the internals of some of the old coins that were being created then hoping I could find something that would enable me to create a coin for the games industry, and I was hoping that people could save some goods in one game for this currency to take into another game and buy new virtual goods, and when I was looking at the internals of these coins, I saw there were a lot of shortcomings and unresolved problems, and so, in 2014, I created a project called Pebble, and the game was to create a cryptocurrency that you know was much faster, scaled to its normal capacitates. We wanted to do things like recurring micropayments and the idea was that the internet services like Facebook would turn off advertising exchange for receiving these recurrent micropayments, so I set about trying to solve that problem, and initially, I was just drawing on traditional presenting Byzantine fault tolerance consensus critical science, and I sort of dug into that, and there’s a thing called asynchronous media-free Byzantine fault tolerance consensus protocols, and I spent some months initially just studying them full-time, and then eventually began to repurpose them and devise my own, and you know, by the sort of the end of the summer of 2014, I felt that we had pretty good solutions, and I teamed up with Artia Moghbel, who’s currently chief operating officer at DFINITY, and there was a guy I had met working at VC that funded this computer game that grew so much, and you know we sort of looked into raising money for the project and sort of scaling it out. At the time, I think people were very obsessed with Bitcoin, and if you sort of proposed alternative centralized network protocols, people looked at you with great skepticism, and the venture community had to really come to terms with the whole kind of centralization movement at that stage, and so we exposed a lot of people, but we were probably just educating them, very difficult to actually raise money, so at the end of 2014, we decided to give up Pebble, but at the beginning of 2015, I devised a new computer science actually by way of putting random numbers into centralized network of any size in a way that was totally unmanipulable and very, very efficient, pretty much unstoppable and so on, so once I found this way of doing that, it’s a technique called Threshold Relay, I realized that, well, I can actually create a decentralized network that could run at much higher speeds than anything does today that could be scaled out, and you know I’d been kind of close to the _____ 00:16:13 project and I realized as well that blockchain computers were much more interesting than cryptocurrency ledgers, so I thought okay, and I’d stewed on that line of thinking, and I realized that, look, you could create a blockchain computer that is fast, infinitely scalable and could host software with fantastic properties, security availability, and all these things that could as a decentralized cloud, and you had open public trial computing resource that would also enable people to develop systems in a whole new way, and the original aim at DFINITY was to enable, if you like the reengineering of the internet so that many of the monopolistic internet services of today could be recreated as what we call open source businesses where the service itself doesn’t belong to any company or individual but can update itself and saw a lot of advantages in that, and so I mean if you go back on the way back machine on the internet archives, you’ll see an early DFINITY page with an absolutely horrible DFINITY logo that I created myself, but it’s describing exactly this, you know the decentralized cloud and back then, I used to think about how do you create a search engine on a decentralized network, for example, how do you recreate Gmail, social networks, and Twitter, and that was how it all started, and the name DFINITY, of course, comes from decentralized infinity.
Laura Shin:
Oh, I wasn’t aware of that. That’s interesting. So, we’re going to get into more details around some of these technical aspects that you mentioned like threshold relay, and we’re also going to talk about your governance system, that blockchain nervous system, but first, I’d like to take a quick break to tell you about our fabulous sponsors.
Start Engine:
Interested in raising capital through a security token offering? StartEngine is your full stack solution. StartEngine, a regulated ICO platform with a community of over 155 thousand registered users was founded in 2014 by Howard Marks, co-founder of Activision Blizzard. Since the implementation of the Jobs Act, StartEngine has helped over 160 companies raise capital. In fact, StartEngine can help a company build its own tokens, and is creating a secondary market upon which those tokens can be traded. In short, StartEngine provides a complete token ecosystem. If your company wants to launch a security token offering just go to startengine.com/unchained for a free consultation and a 20 percent discount on future regulated ICO setup services. That’s startengine.com/unchained. This is not legal advice.
Sun Exchange:
Sun Exchange is a solar power marketplace for the crypto economy. Sun exchange members all over the world are earning cryptocurrency while solar powering businesses and communities in emerging markets. Through thesunexchange.com, for as little as 10 dollars and in just a few clicks, you can purchase solar cells and lease them to projects in the world’s sunniest regions earning you an income stream of monitored sunshine paid in bitcoin. Sun Exchange members can earn between 10 and 15 percent IRR backed by the power of the sun. Founded in 2015, Sun Exchange is operating solar projects across southern Africa entirely powered by our members solar cells. Our partners include Solar Coin, the United Nations Development Program, and the Energy Web Foundation. Visit www.thesunexchange.com to check terms and eligibility to join the crypto solar revolution. Start earning solar powered money today.
Laura Shin:
I’m speaking with Dominic Williams of DFINITY. So, let’s talk about your consensus mechanism and Threshold Relay and the decentralized random beacon and all the other aspects and describe to me how your consensus mechanism differs from the other consensus algorithms.
Dominic Williams:
Well, first of all, consensus is a difficult branch of computer science, and to put it into perspective, you know I’m a graduate of _____ 00:20:06, I got a whole bunch of prizes, I’ve been working in sort of field of distributed computing of one form or another for more than 20 years, and it took me some months of studying to really understand just traditional Byzantine fault tolerance consensus, right, so I think there’s a lot of different protocols out there. I think a lot of them show no doubt quite a bit of skepticism, frankly, but you know, the DFINITY system is surprisingly simple.
We lean on traditional cryptography to make things possible that you couldn’t do with traditional distributed computing techniques, so the foundational technique is known as Threshold Relay, and it works by applying something called unique deterministic threshold signatures to generate a sequence of random numbers, but the clever bit is that the sequence of random numbers is completely unmanipulable so even if you had a network of computers and they’re all controlled by the bad guy, right, the adversary, even he couldn’t manipulate the sequence of random numbers, so that’s obviously a valuable property.
The other great property is that Threshold Relay works with a network of any size, so you know we aim for DFINITY network to incorporate tens of millions of computers, so that’s a very important piece, and it’s super-efficient so each successive random number is produced by a broadcast of any 22 kilobytes of data, and you can run it extremely quickly if you want to. Now, the marvelous spin about it is through Threshold Relay we’re able to have a network of any size agree upon the sequence of random numbers, which is generated in an unstoppable way and is completely unmanipulable and without running a consensus protocol. That’s the trick.
Laura Shin:
So, in terms of the difference with Bitcoin, Bitcoin also is random, but in order to get that randomness, you have to waste a lot of…or not waste, but you have to use up a lot of electricity. Is that the difference then?
Dominic Williams:
Well, so _____ 00:22:06 work actually performs a number of different product functions of watt, so the cost of generating a block it provides something called Sybil resistance. It makes it difficult for an adversary to come into the network and achieve 51 percent of the mining power instead of over you know break the full balance of the network and take control, but it’s also a random number generator, right, so the idea is that everyone’s beavering away, you know spinning the nuts in their block until their hash, which is a number obviously, falls beneath the target and because you can only find a nonce that brings the hash of the block beneath the target by brute force, you know effectively, it’s a kind of a random number generator where your chance of finding a winning nonce is proportional to the amount of computing power you’re applying, but it also _____ 00:23:02 random number generator, so nobody knows who’s going to create the next block, and that’s very important for a variety of reasons, but you could call it a kind of caveman method, right, of producing random numbers. It’s extraordinarily expensive. The numbers are produced in something called a _____ 00:23:20 distribution.
Laura Shin:
Wait, actually I want to ask you something because the Bitcoin mining process has long been credited with giving the Bitcoin network its security, so does DFINITY give up anything in terms of security by using this other method that doesn’t require as much computer power or electricity because simply the investment that you need to make in Bitcoin to do that is I think what people say gives it its security?
Dominic Williams:
Well, I mean the Bitcoin community obviously is very keen to make their case or proof of work. I personally believe it’s not very secure, and DFINITY will be much, much more secure. I wouldn’t be satisfied with nothing secure.
Laura Shin:
But what makes it secure?
Dominic Williams:
Well, I mean I think there’s, I forget the numbers, but you know there’s studies out there that show that with an investment of say 100 million dollars you could easily achieve 51 percent of the hash power of the big point network.
Laura Shin:
Wait. Just for the money and equipment or including the electricity?
Dominic Williams:
Well, once you got the equipment if you got electricity, you don’t have to run it forever in order to disrupt the network, right. I mean if someone bought the equipment¸ you know got in the agreements with the electricity providers and turned it on and switched off the Bitcoin network for a day, well, the Bitcoin network is probably toast because it’s one of the _____ 00:24:39 of any decentralized network.
Laura Shin:
Wait, I’m sorry, I don’t understand how you would turn off the Bitcoin network for a day just by buying mining equipment. That doesn’t make sense to me.
Dominic Williams:
Well, so any decentralized protocol has something called false _____ 00:24:52 so it can continue producing agreement so long as the adversary, some notional attacker, controls less than a share of the network, so if you control 51 percent…actually, you don’t even need that, of the hashing power in the Bitcoin network and you’re an adversary, you can turn it off, you can break the protocol, so the protocol won’t produce agreement anymore.
Laura Shin:
Oh, kind of like wipeout attacks, like where you’re mining on a different chain and then you wipe out the chain that all the non-bad actors are on, is that what you’re talking about?
Dominic Williams:
Well, so for example, I mean it’s widely known that there’s a thing called a double-spend attack that can be performed if you have 51 percent of a network. It turns out that you can actually do some attacks with less than that, but you know, let’s say you’ve got 51 percent of the network, you can just sort of double spend by continuously building a new longest chain, but if you continually forked the tip, it wouldn’t progress, and the system would become unusable. Right?
Laura Shin:
Okay. Yeah. I mean it’s still different from turning off.
Dominic Williams:
No. No. You don’t turn it off.
Laura Shin:
I thought you were being literal.
Dominic Williams:
Let’s say you have 51 percent, the 49 percent would still have their mining equipment, but you could effectively turn off the network in the sense that it wouldn’t be processing transactions anymore.
Laura Shin:
Okay, but so to go back to DFINITY, so I understand that you are able to get the same kind of randomness as Proof-of-Work without the expenditure of electricity, but then how does the security come in?
Dominic Williams:
So, you know we’re using just more advanced computer science. So, first of all, with respect to the sequence of random numbers, even if the adversary controlled 100 percent of the network, they couldn’t manipulate that sequence of random numbers. It’s unmanipulable by the mathematics involved, so that’s one example of how we achieve greater security, but with respect to…
Laura Shin:
But if they are controlling 100 percent of them then for each block reward they get couldn’t they exclude certain transactions and only include certain one or whatever it might be or no?
Dominic Williams:
Sure. So, that’s another aspect of these systems. It’s just that if the adversary controls a majority, he can _____ 00:27:13 censorship, but I’m just focusing on one particular aspect. The generation of random numbers is unmanipulable, so that’s a great foundation, but with respect to ensuring the adversary doesn’t control the majority of the network, that cycles Sybil resistance, and you know you want to make it as expensive as possible for an adversary to build up that kind of presence in the network. He would have to acquire an enormous amount of DFINITYs, so the current cap, if you like, in the last presale round of the project is two billion dollars, and quite possibly the network and production will have an even higher token cap, so a lot of that will be staked in various ways in the network, so you can create a very large capital impediment to the adversary, and what’s more, I mean if you were an adversary wanting to attack the DFINITY network, let’s say you are a James Bond villain, you would have to acquire that stake and then use it to break the network, but in the process of doing so, you’d be destroying your own investment, so that’s pretty expensive.
Laura Shin:
Yeah. I mean this isn’t actually that different from Bitcoin because a lot of people say if somebody attacked the network then of course the value of the coin would drop, and so the benefit that they would get from attacking the network wouldn’t…the financial benefit wouldn’t be there, and it’s similar with _____ 00:28:36, but actually, let’s talk about _____ 00:28:39.
Dominic Williams:
Yeah, just one last piece. I mean there are many other differences. I mean it’s true that Bitcoin has some nice properties, but they’re very basic, frankly. I mean one of the problems is that because of the pooling of mining, in practice, you know the network is driven by a relatively small number of participants, and by contrast, for example, with DFINITY, the network will launch with tens of thousands of individual participants, and you don’t have just a handful of points of failure, right, so if you wanted to hack say the software, the critical pieces of software running the network, it would be much harder because it’s a much more distributed and decentralized network than you see today, and that’s one of the key features of DFINITY, we’re able to combine millions of individual participants or some of these participants may be owned by the same entity, but nonetheless, there are many, many more individual nodes in the network all of which are participating and producing blocks, so there’s a number of different ways.
Laura Shin:
What I don’t understand is why would you expect that you wouldn’t still also end up mining pools in DFINITY.
Dominic Williams:
So, DFINITY doesn’t work like Bitcoin. There’s no Proof-of-Work, so first of all, Bitcoin and Ethereum work by placing miners into a competition where they try and solve Proofs-of-Work, if you like, and if they’re lucky and they solve the current puzzle, they get a reward. That doesn’t happen in DFINITY.
Laura Shin:
Right, but what I’m saying is so with both Bitcoin and Ethereum with Proof-of-Work as far as I understand the reason why people enter mining pools is because the payments that they would receive if they were mining on their own would be spaced out unevenly, but if they join a mining pool, then the pool will know over time okay this person has like 1 percent of all the hash rate. I don’t know if an individual has that much, but they can say over time, we will pay you 1 percent of the hash rate in an even fashion rather than you know one block reward now and then one six months from now and then one two weeks after that and whatever, so with DFINITY where it’s also done randomly, then wouldn’t the payouts to individual miners be similarly not evenly spaced out, and so wouldn’t there still be incentive to join a money pool?
Dominic Williams:
I mean DFINITY is just generally speaking a much more sophisticated system, so it’s difficult to draw lessons for a very simple Proof-of-Work system and apply them to the DFINITY network, so each node in DFINITY has an approximately similar hardware specification, and each node in the network acts as a replica, right, for in some shard that stores some number, you know some subset of the applications hosted on the Internet Computer, and the protocol has cryptography schemes incorporated into it that enable it to apply sort of service level agreement, if you like, to each individual node, so let’s say you were running a DFINITY node, it would look something like a mid to high end server machine. It would be required to have a certain amount of storage and a certain amount of process capacity. Once that’s added to the DFINITY network, the network will fill its storage space with cryptographic junk that’s predictable that you have to encrypt in a special way, and this enables the network to interrogate you to check that indeed you have performed the role and you’ve uniquely stored this data, and economically speaking, the most efficient way of doing that is with a dedicated machine that’s designed in that way, so how could you pool it. How could you pool that? I mean each machine has to exist as a separate economic entity. It performs a role, and it gets rewarded for performing that role.
Laura Shin:
Okay.
Dominic Williams:
You know, Bitcoin is a completely different thing, and the same with Ethereum. I mean you know every node in the network is applying the same transactions to some shared state, right, because there’s no notion of individual nodes that perform some discreet role, so let’s say you want to increase your economic presence in the DFINITY network you have to connect more nodes to the network, right, so each node has the same role as every other node, and you increase your earnings by installing more nodes. There’s no way you can pool those, right, because you can’t consolidate them whereas in Bitcoin or Ethereum, people are able to have some hashing hardware and sort of collaborate with other people with hashing hardware in a pool so they get some kind of stream of income with less barriers, but that’s a completely different kind of system. The hashing has no functional purpose remember, right?
Laura Shin:
Okay. Right.
Dominic Williams:
All you’re doing is just burning as much electricity as you can to try and increase your chances of getting the next block.
Laura Shin:
Which has the side benefit of adding security to the network. So, let’s move onto…
Dominic Williams:
No, just to recant it. DFINITY will provide much, much better security than that. We don’t believe that just having a competition to burn electricity, which also has a hugely negative impact on the environment provides the best security, and there are a bunch of clear, theoretical scientific reasons why that doesn’t provide the best security. It’s just that Bitcoin took off, it was a mechanism for making early decentralized networks work, and you know these tokens got enormous value, so all kinds of people around the world started joining the competition to try and find the next block to get the block award, but you know that’s not scientific evidence or a reason that this design produces the best security for decentralized network. It definitely doesn’t, and it also doesn’t produce the performance and predictability and it’s very, very difficult also to scale it out so that you can increase the capacity of those kind of networks.
Laura Shin:
You have a system for making protocol upgrades that you call the Blockchain Nervous System, how does that work? How does it decide to upgrade the protocol?
Dominic Williams:
So, the Blockchain Nervous System is actually a much broader system. It’s what you might describe as an algorithmic governance system, and it actually controls all aspects of the network, so it can adopt or eject proposals that are submitted to it, and those proposals can touch on pretty much anything. You know, it can adjust the economic parameters of the network. It can freeze miscreant systems. Say for example, someone discovered something terrible like an ISIS slave market running on the platform. It can help broken systems fix themselves, and among other things, it can also upgrade the protocol itself, and it does that by adopting a proposal to run an installer destroyed by a hash that essentially installs a new version of the full node software on the machines back in the protocol. Does that make sense?
Laura Shin:
Well, actually, I have a number of questions about this for you. So, one thing that I noticed was when you described it you said that this Blockchain Nervous System could have what you called quote privileged control over token ownership, and it could do things like repatriate stolen funds. That sounds like centralized control, so how does that work?
Dominic Williams:
So, in a sense, it’s decentralized centralized control, so the Blockchain Nervous System plays the role of network administrator, and in that sense, you know it is a central entity that controls the network. However, you know it’s an algorithmic governance system that’s controlled in a decentralized way. The basis of this system are things called neurons, and a neuron is a voting unit whose voting power is proportional to the number of definities locked up inside, and these neurons can be configured to follow each other, so let’s say, you wanted to get involved in the governance system for which you get rewarded by the way, so every time your neuron votes, you receive rewards, probably you wouldn’t feel qualified to vote on proposals relating to cryptography, so you would configure your neuron to follow other neurons when proposals submitted to the system with a cryptography topic, so for example, you might pick five neurons whose addresses have been published by individuals, who are sort of experts in the field and who are members of the DFINITY community, so let’s say, you might configure your neuron to follow Timo Hanke, _____ 00:37:51, those kind of people, and so let’s say, there are five of them, right, so your neuron follows five cryptographers in the community, you might configure it so that if three of these other neurons vote to adopt a proposal, your neuron votes to adopt the proposal too, if three of those five vote to reject the proposal, your neuron votes to reject the proposal too, and if neither of those conditions occur before a timeout, then you vote to reject the proposal, so you will have stayed some definities to create this neuron and you can only get those definities back by dissolving the neuron. Actually, the time it takes you to dissolve the neuron is configurable and the longer it takes you to dissolve the neuron, the greater the rewards you receive in relation to the number of definities you’ve staked each time you vote and the greater the voting power, so let’s say you wanted to achieve the maximum possible returns from your definities, you might create a neuron that takes four years to dissolve, and that will maximize the voting power and the rewards you receive in proportion to the definities you’ve staked, so you know your objective as a neuron holder is for the Blockchain Nervous System to take decisions that ultimately increase the value of DFINITY tokens, which you know probably is a proxy for network adoption, and obviously, if you’ve created a neuron, which takes four years to dissolve, you’re very keen that the value of those definities locked up in the neuron increase, right, and that decisions are adopted that will increase the value of each DFINITY token, so in a sense, the objection of the Blockchain Nervous System is just simply to increase the value of definities. All of that’s kind of proxy production.
Laura Shin:
But something that I don’t understand is you’ve called the Blockchain Nervous System an AI, but when I read how it works, it seemed more Delegated Proof of Stake and what you just described also sounded like Delegated Proof of Stake, and you’ve also described the Blockchain Nervous System as liquid democracy, which a lot of people use typically as another term for Delegated Proof of Stake, so where does the AI come in? I don’t understand that.
Dominic Williams:
Well, I wouldn’t call it an AI. I’d call it an algorithmic governance system, first of all, but you know it certainly has elements of Proof of Stake, although it has nothing to do whatsoever with consensus, it’s just a governance system, and it has elements of liquid democracy, but there are significant differences, right, so each neuron is an economic entity, which wraps in definities, and you know if you’re a holder of one of these neurons, you can’t get the definities inside back without dissolving, and that takes some time, so you’re very keen, you know the incentive structure is set up so you’re very keen that this neuron takes votes for proposals that will ultimately increase the value of the network.
The neurons themselves are managed on client devices, so you’ll configure your phone or your laptop with neuron client software so the neurons, if you like, are distributed around the edges of the network. Nobody really knows what the follow relationships are and it will sort of cascade decisions, but it has some interesting properties with respect to AI in the sense that neurons are following other neurons. It’s not quite like Delegated Proof of Stake or liquid democracy where you just say hey, this person has got my vote.
Laura Shin:
I wanted to ask also about how the BNS will learn from market feedback. You had given this example in a Medium post about how, for instance, a demagogue neuron might persuade other neuron owners on Reddit to follow him, and then that could result in a stupid proposal being adopted, and you said that then the markets would not be fooled for long, and I’m quoting here, and react negatively, leading people to examine how and if their neurons voted for the proposal. The neuron of the demagogue would be removed from follow relationships, and over time through such actions, the follow relationship shall tend toward more optimal forms, but who would remove the neuron of the demagogue like you used a passive voice there, but who is removing this demagogue neuron?
Dominic Williams:
I mean the demagogue can keep its neuron but people will just unfollow it, so in the example with cryptography follows, let’s say that you followed some individual who’s a loudmouth on Twitter, and you configured your neuron to follow this dude and you know somehow he was sort of a fraud, if you like, and he got lots of people to follow him and eventually somehow because lots of people followed him, he was able to submit a proposal to the Blockchain Nervous System that made some rather dubious technical changes and these were adopted and because of all the people following him, the system started using this stuff, well you know, the consequences could be quite dire and no doubt it would impact the value of DFINITY tokens, right, so you might look at this and think crikey, why on earth is my neuron following this guy.
Laura Shin:
Okay, but to understand, so when you said that the BNS will learn from market feedback, it’s not really learning, right, it’s just that people are unfollowing that neuron, right?
Dominic Williams:
Well, I mean it’s an algorithmic governance system, and it makes proposals as a result of neurons voting, and neurons vote for the most part automatically as a result of their follow relationships, so if a proposal is adopted by the Blockchain Nervous System that results in some kind of negative market impact, people may look at their follow relationships they’ve configured into their neuron and say oh, hang on, my neuron voted for this stupid proposal and it voted for this stupid proposal because I’m following these people or this person, I’m going to reconfigure it to follow someone far more sensible.
Laura Shin:
Right, and so it’s people learning not the BNS itself, right?
Dominic Williams:
Well, people are responding to market data effectively and changing the follow relationships between the neurons so that it makes better decisions, so in that sense, you know in the sense it’s an algorithmic governance system where for the most part neurons act completely automatically, you know it’s kind of learning these follow relationships between neurons that are being reconfigured.
Laura Shin:
So, if I’m running a neuron and I have made this error of following the demagogue neuron, I don’t unfollow it, my neuron will unfollow it by itself?
Dominic Williams:
No, you, yourself reconfigure the follow relationship.
Laura Shin:
Oh.
Dominic Williams:
Let’s say, you’ve got the major DFINITY _____ 00:44:53 dude, who’s got tons of people to configure their neurons to follow his on some topic and maybe some stupid proposals have been adopted by the system, you know if there are negative market consequences, which you would expect at least over a sort of medium to long term, you’d expect people to reconfigure their neurons so they’re not following this guy, right, so in that sense, the system is evolving because remember for the most part these neurons vote automatically, right.
Laura Shin:
Okay. Right, but there’s that moment where the change happens manually?
Dominic Williams:
Oh, sure.
Laura Shin:
Okay.
Dominic Williams:
It’s not a sort of general purpose intelligence, it isn’t some hybrid system.
Laura Shin:
Okay. There’s more I want to ask about this, but we’re running out of time, so I’m going to just move on. I want to ask you, we mentioned WebAssembly before, why did you guys choose WebAssembly as your programming language and first of all also just if you want to explain it for listeners who don’t know and then explain why you chose it?
Dominic Williams:
Sure. So, WebAssembly is sort of one of the first open standards for universal software that can run anywhere, and it was originally conceived to allow much more sophisticated web applications to be created, so you can think of it a bit like java for the web, right, but you know it’s been designed with the benefit of all of the kind of learnings in the past 20, 25 years or something, so it’s a really nice specification for a virtual machine for which you can create Bytecode, right, and in principle, you can create that Bytecode using any computer language, any programming language, so that’s nice, so the idea is that you can create like a WebAssembly _____ 00:46:48 using the programming language of your choice and this will run inside the browser at near native speeds.
Laura Shin:
Does that lead to any sort of imprecision, which would be a bad thing if you’re obviously dealing with money?
Dominic Williams:
Well, so the computations performed on the Internet Computer have to be completely indeterministic, so for the most part, WebAssembly is completely deterministic. I think there’s one instruction relating to floating point operations that isn’t deterministic.
Laura Shin:
Okay. I don’t know what that means.
Dominic Williams:
A floating point is like a number with a decimal point, right, and so that particular instruction can’t be used in software that runs on the Internet Computer.
Laura Shin:
Okay. For money, there’s often decimal points.
Dominic Williams:
Yeah, so we’re talking about a virtual machine, right, so it has nothing to do with money. We’re talking about a virtual machine, a virtual computer, that you can run Bytecode software on, so yeah, it’s roughly equivalent to say the java virtual machine, you know you can compile the java programming language down to java Bytecode and you can run it on a java virtual machine, and that java virtual machine might be implemented in an IOT device, on a _____ 00:48:09 server or whatever, right, on lots of different kinds of running systems, so you know that was the great thing with java.
Laura Shin:
I’m just confused because I think oftentimes these different crypto networks or the different blockchain systems usually are dealing with money, so are you saying that DFINITY is going to not be used as often for financial transactions?
Dominic Williams:
No. No, not at all. There’s just no relationship between the virtual machine and money.
Laura Shin:
Okay.
Dominic Williams:
Yeah, a virtual machine is like a virtual computer. It’s a standard that you can use to create software that runs on any instance of that virtual machine wherever it may be hosted, so you know all of the main web browsers now have implementations of the WebAssembly virtual machine and that means that you can compile WebAssembly software from some programming language and it will run in any web browser on whatever platform that web browser is running on, right, so it’s just a standard for creating software, and it’s an important standard because for the first time really we’ve had an open spec for a virtual machine that can be implemented absolutely everywhere without any kind of licensing restrictions and so on.
Laura Shin:
So, basically, the developers will be using this to create different decentralized applications on DFINITY?
Dominic Williams:
Yeah. So, we’ve got a language called ActorScript, which we’re going to release at some point, and we expect that people will use ActorScript to create WebAssembly software that runs inside the web browser, and they’ll also be able to use the same programming language to create WebAssembly software that runs on the Internet Computer.
Laura Shin:
Okay. All right, so we’re going to have to move super quickly through the last questions, but you proposed a crypto fiat system called the PHI system, how does that work?
Dominic Williams:
So, PHI is really a DAPP that would run on top of DFINITY or it could also run on top of Ethereum, and it’s really kind of an algorithmic implementation of commercial banking, so it’s a system that produces what we call crypto fiat, so it produces tokens that mirror local fiat currency, so you have like PHI USD, PHI CHF, PHI GPP and so on, and it does that in the same way that commercial banks create money, so what a lot of people aren’t so aware of is that the money we use in a modern economy is created by commercial banks not the government, so for example, in the US or the UK, 98 percent of the money, you know dollars or pounds, is actually created by commercial banks when they issue loans, so the way it works is let’s say I’m a bank and you’re a borrower and you want to borrow 100 thousand dollars, I will simply create the 100 thousand dollars for you and that goes onto my balance sheet as a liability and then I’ll make you sign a loan agreement, so you will promise to pay me back say 110, 120 thousand dollars with interest, and that legal document, the loan, is an asset on my balance sheet, so let’s say you know I’ve created 100 thousand dollars to give to you and now I’ve made you sign a loan agreement and you’re going to pay me back 120 thousand dollars, well there’s some credit default risk, so I’ll book that as an asset worth 110 thousand dollars, so I’ve made nominally a 10 thousand dollar profit. Now, the interesting thing is that really that means the fiat money, you know dollars and pounds, is really an IOU, so all of the pounds and dollars are collateralized by these debt relationships, so let’s say in order to convince me to create this 100 thousand dollars for you, you had to sign a loan agreement, which gave me a call on your collateral, that could be a personal guarantee, it could be your house, your car or whatever, and probably you’ll supply more collateral than you’re borrowing, right, and there’s lot of interesting properties you know if the value of the economy falls, well as the value of those assets that you’ve provided as collateral fall, so does the value of the fiat currency and synchrony, right, because it’s backed by collateral that’s nominated in the same units, same currency units, so anyway, it’s a powerful system because it enables you to create large amounts of fiat, right.
Laura Shin:
It’s a fractional reserve system.
Dominic Williams:
Yeah. It is a fractional reserve system. I think if you look at traditional economic textbooks, they show kind of a rising triangle as the traditional way of explaining it, but in practice, you know for example, in a modern economy, the banks are less constrained by the sort of fractional reserve aspect of it than by risk, so in the UK, for example, there are no reserve requirements at all. Now, the limiting factor is actually risk because if the bank becomes insolvent because the liabilities, i.e. the money that it’s created, are greater than its assets, i.e. the book value of those loans, it has to stop operating immediately, so when banks are thinking bout how much they can lend, they’re really looking at the risk of insolvency, and that’s the limiting factor.
Laura Shin:
So, as you know, something that’s fueled the rise of Bitcoin and some of these other crypto currencies is the cap on the monetary supply and the fact that you cannot do the fractional reserve system, so do you feel like that runs any risks for you, and obviously, there is this whole flashback to the financial crisis that I think talking about fractional reserve thinking brings to people, so do you have any worries about that and how will you kind of prevent crises like that with this crypto fiat system you’re building?
Dominic Williams:
So, Bitcoin in essence is very different to our fiat currency. You know, essentially, you fix the supply and then the value fluctuates with _____ 00:54:50, and that’s why it’s so volatile, and that was the magic trick that’s _____ 00:54:54 to create value in cyberspace. We just said look, we’re going to create these tokens, there will only ever be this many, and thus, if the demand for these tokens increases, the price will rise and that in itself actually creates demand for the tokens, but when you’re talking about more standard economic sort of business requirements, you’re really in something like fiat, which is much more stable and where the unit or the count matches the value of assets in the economy, right, or is linked to the value of assets in the economy, so it’s certainly true that if the PHI system made lots of unwise loans, the system could break, so the equivalent would be the financial crisis where banks were able to create all kinds of silly loans to people in subprime housing who had no chance of paying it back, and they were able to say you want a million dollar mortgage say I’m going to create the million dollars and I’m going to put this mortgage or something…
Laura Shin:
But are you building something into DFINITY or into this PHI system to prevent that?
Dominic Williams:
Yeah. Sure. So, the design of PHI aims to originate loans in a decentralized manner in a much more rationale way such that we reduce the risk inherent in the system while creating effectively mirror fiat at much lower costs.
Laura Shin:
Okay. So, I wanted to ask you between your presale and your public sale, what was the markup on your tokens?
Dominic Williams:
Well, between the public seed round and the private round, so I think you’re referring to we did this public seed round at the beginning of 2017 that sort of predated the ISO craze. It was a very, very naïve time. We actually put a soft cap on it of one million dollars. We said look, we just need like one million dollars in the foundation, and we’ll raise more money later, and once we’ve reached…or one million Swiss francs actually, and once we’ve reached that target, you know people could contribute using Bitcoin, Ethereum or Swiss francs, once we’ve reached that one million, then we’re going to switch the systems off in a few hours, and we did that, and by the time it was switched off, I think we had collected like 3.9 million Swiss francs, but then the ICO market exploded and we were sort of slightly leery of some of the practices, so we sort of decided to stand back, and we raised further money from hedge funds and venture capitalists, and so on, and there’s some really big name investors involved in the project, so I think between the seed round and the loss round, which has raised…I’m not quite ready to announce it, but it’s like…the original target was like 90 million dollars, and it was oversubscribed, so it’s like more than 100X markup.
Laura Shin:
Okay, and how do you feel about having such a large markup for the everyday investor?
Dominic Williams:
Well, you know I think it’s hardly true that you know there was like four hundred people that participated in that seed round, and they’ve been very well rewarded for their faith in the projects, and you know that’s the nature of capitalism, sometimes there are big winners, and it’s certainly true that seed investors have done very well indeed. I still think there’s enormous upside in the projects, so I think it’s just the beginning, but yeah, seed investors have done very well.
Laura Shin:
From a lot of your blog posts and also previous conversations I’ve had with you, it seems that technical innovation is one of the differentiators for DFINITY, if not the main differentiator, how do you plan to become the dominant platform on technical strength in an opensource environment where any other team can take the technology you’ve built and add it to their platform when they may already be starting out with a greater network effect?
Dominic Williams:
Yeah. So, that’s a very good question, and I think any organization like DFINITY that’s investing a huge amount of money into the research and development of new science and development of software and so on has to think about that carefully, but first of all, networks can accrue network effects, okay, and you know the DFINITY network, first of all, will launch a scale I think that will surprise a lot of people, the technology involved will be very complex, and we’re building a kind of massive decentralization, so you know the DFINITY Foundation has, for example, research centers in Palo Alto, Zurich, and people all over the world, people in Germany, UK, even got three people in Japan, and you know one of the factors that people wanting to build on the Internet Computer or a platform like that will take into consideration is what kind of group of people are standing behind that network, right, and honestly, the technology has become so complex it’s very unlikely that some team out there that just wants to create a quick _____ 01:00:06 will even understand the systems that the software are implementing, so…
Laura Shin:
Right, but it could be like really good developers like from Ethereum or something.
Dominic Williams:
Well, there’s two businesses. First, when the network launches in _____ 01:00:23, it may be that some of it’s close _____ 01:00:24 instead of progressively revealed with bounties of people who found bugs and things like that, so the will be a window where the network has an opportunity to establish itself. The technology involved is far too complex for people to sort of just dip in and just take some piece and add it say to Ethereum in order to give it some huge boost, right, you’d really need to just to take the entire DFINITY system and use it to create a new network, but then anyone looking to build on the Internet Computer has to ask the question, well look, here’s the real Internet Computer with this large network of miners, which will be like professional hosting centers running tens of thousands of computers that’s got this fantastic massive decentralization that’s dedicated to continuing to develop it and help support it in production, I think most people would choose to build on that network rather than just some network of a few nodes backed by some people that can’t develop their own technology.
Laura Shin:
Right, but what I’m saying is what if it’s like a robust network that adopts some of the technology?
Dominic Williams:
Well, so adopting some of the technology is pretty tough, so the thing is engineered as a whole, and I think what people are going to see in the coming years is that the original simplicity of something like Bitcoin is replaced by things that are vastly more complex and sophisticated, so it’s not just like you can just take the protocol and run it yourself on your network to intrude it, you’d have to take the entire DFINITY stack and then with your own minors create a competing network, but that would be possible, it’s true, but I think people looking to build on the Internet Computer will have to consider whether they want to build on this sort of imitation network or they want to build on the network, which has vastly more computational power and also is backed by you know this massive decentralization.
Laura Shin:
Right. Okay. Great. Well, that’s all the time we have, but this has been a fascinating discussion. Where can people learn more about you and DFINITY?
Dominic Williams:
Thanks, Laura. Well, we’re trying to make as much information available as possible, so I think there’s a series appearing on YouTube. I think there’s one called Inside DFINITY. We’re trying to push more and more information onto the website, out through social media channels, Reddit, Telegram, and so on, and we also attend a lot of conferences and there are even DFINITY meetups where you can go and meet members of the team and those have been taking place all over the world.
Laura Shin:
Okay. Great. All right. Well, thanks for coming on Unchained.
Dominic Williams:
Thanks, Laura.
Laura Shin:
Thanks so much for joining us today. To learn more about Dominic and DFINITY, check out the show notes inside your podcast episode. New episodes of Unchained come out every Tuesday. If you haven’t already, rate, review, and subscribe on Apple podcast. If you liked this episode, share it with your friends on Facebook, Twitter, or LinkedIn, and if you’re not yet subscribed to my other podcast, Unconfirmed, I highly recommend you check it out and subscribe now. Unchained is produced by me, Laura Shin with help from Raelene Gullapalli, Fractal Recording, Jennie Josephson, Rahul Singireddy, and Daniel Nuss. Thanks for listening.