Epicenter - Learn about Crypto, Blockchain, Ethereum, Bitcoin and Distributed Technologies - Dominic Williams & Tom Ding: DFINITY – The Quest for a Decentralized Cloud

Episode Date: November 14, 2016

String Labs founders Tom Ding and Dominic Williams joined us to discuss their project DFINITY, a next-generation blockchain network. Through leveraging technological advances, DFINITY aims to deliver ...an infinitely scalable decentralized cloud that will be able to power applications from decentralized search to supply chain applications. We covered DFINITY’s approach to scalability, interoperability, consensus as well as their sophisticated approach to governance: The Blockchain Nervous System. Topics covered in this episode: Tom and Dominic ended up founding String Labs The DFINITY project and objective of an infinitely scalable decentralized cloud How consensus works in DFINITY Governance in DFINITY through the Blockchain Nervous System Threshold Relay signatures and other new technologies that are part of DFINITY The importance and mechanics of public/private blockchain interoperability DFINITY’s business model Episode links: String Technology DFINITY Shanghai Talk DFINITY Shanghai Presentation Slides Introducing Random Beacons Using Threshold Relay Chains Random Beacons in Decentralized Networks This episode is hosted by Brian Fabian Crain and Sébastien Couture. Show notes and listening options: epicenter.tv/157

Transcript
Discussion (0)
Starting point is 00:00:01 Hey, everyone. We're looking to hire a part-time communications manager to join the Epicenter team. You can get more information about that position at epicenter.tv slash apply. So if you're interested in learning more about that, if you think you have what it takes, go to that website and you'll find the job description and the instructions on how to apply for our communications manager position. Thanks. This is Epicenter, episode 157 with guests Dominic Williams and Tom Ding. This episode of Epicenter is brought you by Jax. Jacks is the user-friendly wallet that works across all your devices and handles both Bitcoin and Ether.
Starting point is 00:01:08 Go to J-A-A-W-X.io and embrace the future of cryptocurrency wallets. And by the Ledger NanoS, the hardware wallet which sets the new standard in security and usability. Get it today at ledgerWallet.com and use the offer code Epicenter to get 10% off your order. Hi, welcome to Epicenter, the show which talks about the technologies, projects, and startups driving decent, and the global blockchain revolution. My name is the best thank you. And my name is Brian Fabian Crane. We're here today with Tom Ding and Dominic Williams.
Starting point is 00:01:42 They are CEO and president slash co-founders of String Labs. Now, Tom's actually been a guest on this show before. A long time ago, at the time he was the CEO of a company called Coinify, which were sort of doing, you know, managing crowd sales back then, quite ahead of its time, I think. time, I think now this has boomed a lot. And Dominic, we've been wanting to get on for a long time as well. He was working on unstable coin concepts already, I guess also maybe two years ago or something like that. So thanks so much for coming on, guys. Pleasure. Good to be here.
Starting point is 00:02:20 So, what do you mind running us through, maybe both of you guys? How did you first get involved in the blockchain, cryptocurrency space? And how did that, what was the journey to get to string stream lapse. So yeah, so I got into Bitcoin probably about late 2013. Bitcoin price was, or actually early 2013, Bitcoin price was like $80 or something. Ignore that for a while and then saw the white paper like a lot of people and then kind of realized that there's something into it. So my first journey into it was looking from the perspective of what are the interesting
Starting point is 00:02:57 kind of crowdfunding kind of a model that can revolution. on that traditional crowdfunding model. So that was a bit of time at Quantify. And then also did another more interesting kind of site project, Blotching University, which at the time started kind of a first in-person developer education program. It's really kind of a non-profits community program, but it really helped boost-rap, I think,
Starting point is 00:03:22 some of the community and awareness around blockchain technology. Had like 300 or 400 graduates out of that program. A lot of people out of that program is still pretty active, I think, in the industry. But later on, I think what gets for me more interesting was how could the new kind of decentralized technology could change some of the very fundamental way of how business can be done. And that kind of lead a lot of a discussion later on with Dominic. And I think it's really interesting to me was starting with things like mirror assets. How could you create digital assets in a decentralized fashion, complete decentrality fashion?
Starting point is 00:04:00 That kind of started a journey with string labs. We started with mirror assets and move on later on to the DFINITY project, which is a new decentralized network that we're going to talk about today. Well, I'm a long-time sort of hacker entrepreneur with interests in distributor computing. I actually first came across some of the ideas behind Bitcoin in a paper. paper called B Money by Way Die in, I think it was 1998 or 1999, and I was using his Crypto Plus Plus Library to create a certificate system. And, you know, I read the paper, thought it was very interesting, was very busy with an online storage startup, actually back then. And then
Starting point is 00:04:49 sort of 2011, I launched this kids game, which grew enormously, ended up with 3 million users. and through that I did a lot of work on distributed systems, scalable application servers. I worked with a database called Cassandra, in fact, which is a scalable database used by Netflix. Now we had the first complex production, sort of implementation of that, and I contributed various code to it. So, I mean, it was during that time, you know, I was thinking, I mean, Cassidy, Sandra in some ways is a decentralized database anyways, right? You know, you add these servers to, whenever you want to increase the computational capacity and the storage capacity of your cluster, you just add a new server to the database's gossip network. So I was already thinking, you know,
Starting point is 00:05:47 how far can this be taken? And then, you know, Bitcoin sort of crashed its way back into the common consciousness in a major way in April 2013. And I think partly because I was primed from Waydye's thing, partly because I was, you know, interdistributed systems in a big way, I kind of, I was looking for something else to do, and I just very quickly became completely consumed by decentralized protocols and trading crypto tokens,
Starting point is 00:06:21 and, you know, it just took over my life. And here I am today. It's fascinating that you mentioned way to ice B money. A lot of people don't really think that there were any decentralized distributed currencies before Bitcoin, but this one is sort of a weird predecessor that actually Satoshi reference when creating Bitcoin that board a lot of the same principles as Bitcoin. So I encourage anyone who's interested in that to go read up about B money. So let's talk about String Lops then. Tell us about the company and what you guys are trying to achieve.
Starting point is 00:06:57 Yeah, so I guess we position string labs really as a kind of incubator and a kind of rocket launcher, if you will, for many different decentralized opportunity. If you think about a layer of opportunity within the decentralized space, there's obviously the very fundamental problems we're trying to address, like scalability, privacy and et cetera, business adaptations, the very network layer. On top of that, you have many common needs that a lot of businesses and decentralized startups or constructs we need, for example, stable currency, identities, arbitration, et cetera, et cetera. I think we kind of position string labs as a general incubator and investors and developer ourselves of creating both in-house and external projects to launch project at these different layers, which is quite a unique model.
Starting point is 00:07:49 It's a venture backed, but most of the projects we create, when it gets to certain maturity, once it pushed to certain stage, they will have their own independent existence, and which is one of the very nice things about these kinds of the project, they are independent protocols. They're not necessarily controlled by any certain organizations. So we're kind of uniquely benefiting from this venture backing with stable financial stability, but also the ability to create neutral independent protocols. I'm curious that you, you know, so you say you're a venture-back company, and that's definitely one position to have as opposed to relying on a crowd sale. Why do you think so many
Starting point is 00:08:26 other companies or other projects in this space are going towards the crowd sale route rather than going in the direction that you've taken, which is to raise capital? We kind of, by the way, I prefer the term donation, which kind of more precisely reflect the nature of the process. But anyway, I think the difference, I guess, part of that, I think we're quite lucky. We have some really good visionary backers, including like IDG, amino capital, Fembusha capital, which I think was the first $50 million dedicated fund from the Monschen Group, probably the first in the world.
Starting point is 00:09:03 But I think with these kind of venture backing, it creates a more stable structure. Because in general, there's a kind of fallacy or concern of you rushing too quickly into the donation phase. say, hey, everyone, please donate, before the product even reach it to a certain state. I mean, do not, I think donations, donations does not sound at all like a good description of what's going on with that. I think at the moment in the market, it's probably not true, but, you know, the right way to look at this is that a foundation, well, look, I mean, you know, the whole point about a decentralized network is that it doesn't depend upon some organization or individual. So once you've created that network, you know, it's fundamentally dependent on a decentralized community of independent minors, right? So, you know, it's possible to create a not-for-profit sort of tax-exempt foundation, right?
Starting point is 00:10:05 And somewhere like Zoug, Switzerland. And it's possible for that thing to collect donations, right, and then take those donations to develop the technology. and it's also possible for that foundation to recommend when the technology is ready that people who've donated to the foundation and otherwise contributed to the birth of the project allocated some reward in the Genesis block. But actually, you know, the foundation, it's not even in the power of the foundation to issue tokens to people
Starting point is 00:10:39 because all it can do is recommend something to the miners, right? It's ultimately, you know, whatever Genesis block a foundation recommends, it's ultimately up to the miners to adopt the recommendation and, you know, make that real. I mean, I can see why one phrases that, of course, to avoid some legal liabilities and stuff like that, but it does not at all sound like an accurate description, or it doesn't all sound like it describes the motivations of both the people who donate slash invest in these projects, nor are the people creating them. That's true.
Starting point is 00:11:16 They're giving money because of the expectation of a financial return, which is not a donation. Well, I mean, I think, you know, people will take different approaches, and, you know, I think we'll probably exemplify a slightly different approach. You know, I think tokens should be designed very much to enable participation. And, you know, I think there are some kind of slightly shady things that go on in the industry. frankly at the moment. And, you know, we would not want to follow that path or we'd encourage other people not to follow that path. You know, I think it's true that there are a lot of people who would like to, you know, make money or gain resources through launching these systems, and that's
Starting point is 00:12:01 fine, and that's fair enough. But, you know, the exact process by which that is done is very, very important. And, you know, we shouldn't be encouraging phomo-based pump and dump speculative kind of shit coin ventures, right? Yeah, totally. Let's go back to DFINITY. So, what are you trying to accomplish here with DFINITY? What's the project going to look like and what kind of difference is it going to make in the blockchain space? So DFINITY is positioned as an extension to the Ethereum ecosystem that's governed using a kind of decentralized intelligence called the blockchain nervous system and it introduces a lot of new crypto and decentralized network protocols that have been sort of in the work since 2014 firstly with a project
Starting point is 00:13:03 called pebble and then later with with DFINITY. And, you know, these protocols are very interesting. They introduce some completely new properties with specific regards to scalability. You know, we want to create an infinite decentralized cloud that can eventually host, you know, big public infrastructures like Twitter, Gmail, Uber, even web search. And as well as, you know, if... financial exchanges and various other business applications. All of the crypto and the protocols, you know, we're deliberately not patenting anything. It's all open source, so, you know, it could be backported into Ethereum.
Starting point is 00:13:54 You know, so the main distinction ultimately is, you know, governed versus ungoverned. So you mentioned something like a decentralized Twitter or some of those, or centralized search. Now, my understanding, I guess, is with Ethereum, I'm not sure if that's really an objective to get to that kind of level, but if it's more the objective to have, you know, sort of this core logic
Starting point is 00:14:21 of distributed applications in there and a lot of other things take place elsewhere. So is that a differentiation as well that you guys are trying to put sort of entire full applications on the chain, whereas Ethereum applications might be more of a bit of a hybrid? So, yeah, I think that probably is a distinguishing factor currently. I'm not sure if it'll stay a distinguishing factor.
Starting point is 00:14:43 So DFINITY was, you know, begun with this specific aim of being able to host that kind of stuff and creating this, you know, infinite decentralized cloud. I think because of the history of Ethereum, you know, there is a sort of concept out there that it should only be used for high value fiduciary applications, and that wherever necessary, you know, wherever it needs to, you know, be linked to storage, for example, you know, some large file, the large file should reside on IPFS. You know, that we certainly, you know, we don't share that vision right now.
Starting point is 00:15:27 You know, we want to produce an infinite decentralized cloud, which can store data and perform. any number of computations as necessary. And the research work was begun with a basic requirement that all designs worked on a network of a million plus computers or clients. Because, you know, if you look at the Google Cloud or the Microsoft Cloud, for example,
Starting point is 00:15:56 in both cases they have more than a million servers. So, you know, we wanted to make sure that, you know, we could work with any number of computers, and furthermore, as you add more computation power in the form of new mining clients, that the overall storage capacity and computational capacity of the network increased. Well, it's interesting. There's other projects recently we had on Greg Meredith of Senaro, and that project also seems to be taking a similar approach
Starting point is 00:16:28 where all of the components of the tech stack are built into the same architecture. When you look at the way applications or traditional applications are built today, all of the components, whether they be storage, logic, and database are typically not part of the same stack. You may have sort of recommended stacks or stacks that become adopted by the community, like for instance, PHP, MySQL or Nojsq or Node.js, that sort of thing. And then storage, you know, can be decentralized or sorry, it can be distributed on like some cloud architecture or something like that. It seems to be contrary to the way that traditional applications are built in a way that we have at it, the best interoperability as possible. Can you go into detail or sort of explain the design rationale behind why DFINITY is chosen to build everything into one core system? Because I personally see that as some sort of a weakness. Yeah, so I understand the question.
Starting point is 00:17:29 First of all, yeah, we're very different scenario. and scenario you know has I think it's you know I'd like to hear more about how exactly they're going to create a scalable system and secondly
Starting point is 00:17:45 you know they've also got this kind of stack of you know social networking layers and things like that which are derived from a system that's certainly not a virtual machine so you know first of all DFINITY is just trying to produce a tamper-proof
Starting point is 00:18:02 virtual machine, right? A scalable tamper-proof virtual machine, but, you know, a tamper-proof virtual machine. We're not producing directly at least, you know, any kind of foundational layers on top of that for people. We're just, the Definity project is just focused on the production
Starting point is 00:18:18 of this virtual machine. So, stepping back for a moment and asking, what does that mean? Well, you know, if you, Bitcoin, Satoshi's invention was actually, from my perspective, the introduction of something called a stateful decentralized protocol, right?
Starting point is 00:18:41 So bid torrent is a decentralized protocol, right? But it doesn't remember state. So, you know, if I send a file to you over BitTorrent, it doesn't make any difference to everyone else. Bitcoin was different because, you know, it produces this virtual ledger, right? And if I put a freely spendable Bitcoin onto their virtual ledger, and then, you know, Sebastian, you spend that Bitcoin on the virtual ledger, well, Tom now can't spend that Bitcoin, right? So that means that the state of that virtual ledger has been remembered, which is why we call it a decentralized, sorry, a stateful decentralized protocol. Now, Bitcoin produced a virtual ledger.
Starting point is 00:19:30 Ethereum moved the game on and produced a virtual machine, a virtual computer, if you like, a tamper-proof virtual computer. And this was a very interesting thing because we can install software on it that runs exactly as you'd expect, and if you want autonomously and independently from humans, which provides a lot of very interesting properties. So, you know, we... DFINITY is a stateful decentralized protocol that produces a tamper-proof virtual machine, but it introduces the extra attribute that the virtual machine is scalable. Let's take a short break to talk about Jax. Jacks is a multi-coin wallet created by the people at DeCentral.
Starting point is 00:20:20 Now, in the past, if he had a whole bunch of cryptocurrencies, it was a pain to handle them. You either had to leave them on an exchange, which was insecure, or you had to have to leave them on an exchange, which was insecure, or you have to have to have to be a whole bunch of cryptocurrency. had to have all these different wallets, which was a hassle. Fortunately, now with Jack's, those medieval days of darkness, misery, and suffering are over. Jack supports multiple cryptocurrencies and new ones are being added. But it's not just storing cryptocurrencies you can do with Jacks, but you can also exchange them directly from within side the wallet, thanks to their shape-shift integration. And since there's only one seed, Jacks makes it super easy to back up and sync to your
Starting point is 00:20:59 other devices. Jacks works with Windows, MacOS, Linux, Android, iOS, and has browser extensions for Firefox and Chrome. So go to jacks.io, that's J-A-A-W-X.I-O to download the wallet and get started today. We'd like to thank Jax for the support of Epicenter. Now, you mentioned infinitely scalable, of course, that is sort of this, you know, holy grail in the whole blockchain space. So can you talk about what does that look like? How does the affinity accomplish that? You know, there are many dimensions to the design of DFINITY. And, you know, one of the, we introduce a bunch of principles, and many of them traditional computer science principles into the design.
Starting point is 00:21:46 So we like to separate concerns. So, you know, our designs typically separate, you know, civil resistance, consensus, validate. storage, and we try and to couple them so you can, they can be addressed in an optimal way. But at the core of DFINITY, I suppose, is an observation about the importance of randomness that all decentralized networks and also high-level, advanced high-level systems, ultimately depend on incorruptible, unmanipulable, unpredictable, unpredictable, source of randomness.
Starting point is 00:22:31 And we introduced this thing called threshold relay, which, you know, is the ultimate incarnation of that. So, you know, you could look at Bitcoin, for example, and proof of work and say, really, you know, proof of work, casting aside the civil resistance requirements for a moment, is really a random number generator, you know, you have this big, huge network of mining clients and they all want to produce blocks. So Bitcoin has them race to solve a current puzzle, which can only be solved by brute force with solutions appearing in a Poisson distribution. And whoever solves the current puzzle first is assigned as a temporary leader,
Starting point is 00:23:19 and they can distribute a block to be appended to the current chain. you know now you know there are some issues with that with respect to designing high performance networks in particular the Poisson distribution you know whereby you don't know how long it'll take for a block to be produced is is very problematic so you know if you ever look at the block exporters with bitcoin you'll see that you know sometimes you get a new block 20 seconds after the previous block and other times it'll take hours, right? That's the Poisson distribution. It takes a random amount of time to produce a block.
Starting point is 00:24:03 So, you know, that's quite an expensive and difficult way to produce randomness. We apply cryptography in a novel way to produce randomness. And not only can this randomness only be produced on the agreement of large parts of the network, but the randomness that is produced is unforkeable. You know, it's unmanipulable and unpredictable. And using the properties of this randomness, we can do a variety of things. I mean, there's actually a number of different high-level chain consensus protocols or chain agreement protocols that can be used.
Starting point is 00:24:44 But perhaps more importantly for us, we can hang scalable validations. layers off the random sequence of values. So we have a technique called validation towers, and these are arranged into a thing called a validation tree, which is a bit like does for validation what a Merkel tree does, although the individual nodes can behave asynchronous, you know, can operate at different speeds over the network.
Starting point is 00:25:12 And this provides it possible for us to create a single digest of all the state stored, for example, on shards across the network. And that system only really works if you have this incorruptible, unmanipitable, unpredictable source of randomness. So I watched this talk, and this is a bit of a tangent on the topic, but I think it's really interesting. I watch this talk by Tim O'Henka, who's one of the people that works with you at String Labs, who describes sort of different ways that we can generate randomness.
Starting point is 00:25:49 and specifically how we can generate randomness in a decentralized way. And one of the things that he mentions, and I'd like to get your thoughts on this, is specifically, as you pointed out, is that the proof of work system algorithm is meant to generate some sort of a randomness. And if we had this decentralized true random number generator, Is there any potential there to develop new types of consensus models that can work in a decentralized way, sort of as proof of work does, but that doesn't have some of the flaws of proof of work and proof of stake? Absolutely. So one way to see the importance of randomness is to look at Bitcoin and to imagine conversely that it couldn't produce. randomness. So we'd see some problems emerging straight away. Firstly, if you knew in advance who was going to mine the next block, you'd be able to dos that target, right? If you could, you know,
Starting point is 00:27:02 I mean, obviously, Bitcoin's become, mining has become very centralized and it's a bunch of pools. But let's just imagine, in fact, it was more decentralized as it was meant to be. And that somehow you'd stripped the IP addresses of the important miners out of the P2P network. If you knew which miner was going to mine each block in advance, you might be able to DOS them. If there were higher level systems depending on that, and you knew in advance who was going to mine a block, well, if an adversary controlled a sequence of blocks, you might be able to perform some manipulation on financial markets or something like that by censorship or some other strategy.
Starting point is 00:27:45 In addition to that, it would be very difficult to decide how to fairly distribute the mining amongst the participants. And in fact, even worse, if it was manipulable, you know, one miner might be able to, and this is the kind of problem that, you know, would stop something like NXT working, you know, one minor would be able to choose what transactions to put into a block, say, to, you know, modify the random value that it created and this would and if this influenced which was going to be that who was going to be the next miner to produce the next block well you know you might be able to sort of an adversary might be able to take control of mining and just influence the path
Starting point is 00:28:28 taken so that it was always his own you know clients that were creating blocks so it's very important that it's not possible to manipulate randomness and um you know and you know and In the case of Bitcoin, you know, you have to solve these puzzles. So pretty much the only way you can do that is if you have the mining power. And you can only solve those puzzles by having this mining machinery were away. And it's the probability that you'll solve the puzzle first is proportional or approximately proportional to the amount of mining power that you have deployed. So, you know, randomness and it's absolutely fundamental to. decentralize networking and as it happens also as it turns out high-level systems too so
Starting point is 00:29:18 you know with the threshold relay system we sort of strengthen a lot of properties while also removing the need to produce random numbers in a Poisson distribution and because this randomness is deterministic and unforcable and amelipol and so on is It actually becomes relatively straightforward to create consensus protocols on top of it. Just a quick thing, I'll just say something quickly, which is that I'll talk about consensus protocols, but strictly speaking, it's a common misunderstanding. The word consensus actually is applied to traditional distributed computing protocols, which allow all the participants to decide a result and then move on.
Starting point is 00:30:04 Blockchain is actually a probabilistic, which is slightly different, and they're kind of eventually consistent. So something like Bitcoin is better described as something like a Byzantine fault-tolerant, eventually consistent log. And an agreement is kind of iterative, and it becomes stronger over time. So it's more of an agreement protocol than a consensus protocol. But I'll use the word consensus from now. So you mentioned mining. Now, again, people know, understand Bitcoin mining.
Starting point is 00:30:35 in DFINITY, does that look, what's the sort of connection here? Would that also mean I'm going to be able to spin up my machine, and if I control 1% of the mining power, I'm going to sort of get 1% of the reward. Is there a block reward or get to mine 1% of the block? Is there a similar thing? It's not too dissimilar. I mean, in a DFINITY, we require mining clients to, firstly, to create a mining identity.
Starting point is 00:31:12 And very approximately, we look at these identities as representing some fixed amount of computational resource. Okay. So you create a mining identity by making a deposit of definities. So in that sense, it's a bit like proof of stake. But because we imagine each identity or a requirement, require each identity to have some amount of computational resource, the deposits you make to create a mining identity are always the same. So if you look at something like Casper,
Starting point is 00:31:46 you know, people make something akin to a mining identity by depositing stake. And that stake can be varying sizes. So, you know, a big whale could come along and create an enormous, you know, ID that would mine an enormous proportion of the blocks. So in DFINITY, first of all, each mining identity, which is like a public key, is expected to supply a certain amount of computational resource, and consequently the deposit required to create an identity is the same at any one time. It varies a bit set on this governance system, but that's the first thing.
Starting point is 00:32:27 Then once that mining a density has been joined to the network begins to participate, to mining. There's a thing called a unique state copy ID, which is another new bit of crypto we're introducing, which requires the mining identity to constantly report
Starting point is 00:32:51 on a uniquely encrypted copy of state that it manages. And this is done in such a way that we can be sure that each identity has this copy, unique copy of the state because we need to manage replication. Okay.
Starting point is 00:33:09 And it's done in such a way that we can be sure that the state that it's reporting on, okay, isn't just coming from some centralized state pool, right? There isn't just some like big, you know, mega server in the sky that is actually maintaining this state. And the, you know, whoever controls the mining identity is just, you know, forwarding queries to it. So, yeah, it's a kind of combination. So, you know, you could look at that as a bit like, you know, unique state copies or a bit like proof of performance.
Starting point is 00:33:41 So it's a kind of funny hybrid, really, in that sense. You know, the identities are created by depositing some stake in affinities, but the amount of stake that you deposit is always the same because the responsibilities of that identity will be the same as the responsibilities of the other identities in respect to computational resource. And then there's this thing called unique state copy IDs, which kind of holds the mining identity to its part of the bargain and forces it to constantly prove that it's maintained this unique copy of the state. You guys mentioned Ethereum before, and to me it sounds like this is, you know, a fully alternative protocol to Ethereum going to be an alternative public blockchain that, sounds like it's going to have some powerful benefits.
Starting point is 00:34:39 Today's magic word is neuron, N-E-U-R-O-N. Head over to let's-stock bitcoin.com to sign in, enter the magic word, and claim your part of the listener award. Can you explain, though, because you've also talked about how it's going to be complementary and sort of an extension? like how is this not just a competition and sort of an attempt to create, you know, the follow-on to Ethereum, just as Ethereum tried to create the successor to Bitcoin in a way? So I think the first thing to remember is that, you know, we don't believe in patents,
Starting point is 00:35:21 and it's an open-source project. So all of our crypto and protocols could potentially be backported into Ethereum. So, you know, and in fact, you know, we want to maintain that. maximum level of compatibility possible with Ethereum. So, for example, our UVM is slightly different, but for the most part, it's the same. And, you know, rather than going off and trying to create our own virtual machine, we're just going to, you know, fund and assist Ethereum projects. So, you know, potentially Ethereum can take all of our technology.
Starting point is 00:35:51 The main difference is governance. So, I mean, in terms of market position, there's a few things, actually. I mean, I think it's probably true that we are more obsessed about scalability than Ethereum. There are some things that come with that. I mean, arguably, you could say we favor consistency slightly more than Ethereum does, and Ethereum might favor availability slightly more than we do. So there are some differences in vision, I think, at the network level. But the main, you know, distinguishing factor is this governance
Starting point is 00:36:23 and some other features that provide interoperability between private and public chains, which reflects the needs of some of our partners. So, you know, we see ourselves extending, you know, extending Ethereum and providing, you know, and addressing a different segment of the market. You know, there are people out there that want the code to be law. You know, there are lots of benefits to the code is law approach. But there are also people out there that want a governed system, you know, that can reverse hacks like the DAO and things like that more easily.
Starting point is 00:36:55 Specifically, the business community really wants that because, you know, if you're a big company and you want to put a large amount of money into tokens in a virtual computer and maybe build systems on that virtual computer that become crucial to your organization. Well, you know, you don't want to wake up one day and find out that your developer has made a mistake when they've designed the software or the smart contracts. And some hacker has corrupted and corrupted it and put it in. into an unrecoverable state and there's nothing you can do about it
Starting point is 00:37:35 or even worse, he's stolen tens of millions of dollars worth of tokens and the only answer is that you can use the block explorer to follow them around the blockchain, right? So, you know, a lot of businesses, you know, will happily make the Coda's law contingent upon some higher level governance AI
Starting point is 00:37:55 and, you know, for them that's you know a better alternative so I think you know it's not so much about producing a better Ethereum as extending the Ethereum ecosystem and so people have a choice some people who want the code is law systems can go to the theorem and people who want governed systems can go to DFINITY Yes so I am really happy you bring this topic up governance is something that we've been asking people about pretty much any time somebody comes on with a project because
Starting point is 00:38:28 I think at this point it's abundantly clear that this is a massive need. Even if you look at Bitcoin, right, there's a huge disagreement about what direction it should go in, and there's no way of resolving those agreements. And then again, we've seen the same thing. And it seems like a lot of the new protocols that are coming out are taking, you know, seriously and trying to do things in this direction. So I'm very curious. Can you run us through what the mechanics are,
Starting point is 00:38:58 the definitive governance system look like? So, you know, we've got this thing called the blockchain nervous system. And the blockchain nervous system has a privileged access to the virtual machine. So inside the virtual machine, you've got these things called op codes, which are a bit like assembly instructions, right? So, you know, when you're coding in C, you know, that compiles down to a bunch of assembly instructions. that execute, you know, the CPU executes, right? And, you know, on Ethereum, you have a language like solidity,
Starting point is 00:39:40 and that compiles down to these opcodes, which run directly on the EVM, the Ethereum virtual machine. So we've, you know, extended the Ethereum virtual machine to add some new privileged instructions, which can do things like, you know, freeze contracts, redistribute tokens, even run arbitrary code to reorganize things. And the blockchain nervous system is the only system on the platform that has access to these op codes. Otherwise it'd be chaos, obviously.
Starting point is 00:40:16 And so it's like a sort of super user on Linux or something, right? it can freeze bad contracts, it can redistribute tokens. It can run arbitrary code to reorganize things that also have access to those special op codes. And the system runs, you know, like as follows. You know, people can submit proposals to the blockchain nervous system. You have to pay a fee in definities to stop it being set. spammed. There are different kinds of proposals. Some are very technical, such as, let's upgrade
Starting point is 00:40:58 the protocol to this, and others more related to governance. For example, how much should it cost right now? How much should be deposited to create a mining density given the current value of definities, for example? And decisions on proposals are made using a distributed version of liquid democracy. So individuals can create neurons.
Starting point is 00:41:33 You create a neuron by depositing definities. It's a bit like proof of stake. And you can only get those definities back by dissolving the neuron, which takes three months. So you have a big
Starting point is 00:41:50 incentive to make sure that the blockchain nervous system doesn't make stupid decisions because your definities might fall in value, right? You can't get them out quickly. It takes three months to dissolve a neuron. Once you've created a neuron, you have to install some client software, which, I mean, loosely you can think of it like sort of thought mining or something. You have to install some client software on your laptop or desktop or whatever it is. Configure it with the delegate key. And this client software behaves as follows. Firstly, you can configure it with a follow list,
Starting point is 00:42:30 which is the addresses of other neurons that you follow on different topics. So let's imagine that a highly technical proposal comes into the blockchain nervous system in respect to upgrading the blockchain nervous system protocol. The client software running, obviously, on the edges of the network, would detect this proposal and display it, okay, in the technical tab, and it would wait for a default amount of time to allow the controller of the neuron to vote on that proposal. Now, if it's a very technical proposal,
Starting point is 00:43:09 it might be that only a small proportion of the people who have neurons would feel qualified to vote on the proposal. So after a default amount of time, the neuron client software will go to the follow list for technical topics, right? And it will say, right, has the first neuron identified by its address in the list voted? If so, follow, if not back off. If it's backed off, after a short while, it will come back. Has either of the first two neurons in the follow list voted?
Starting point is 00:43:49 Okay, the second neuron in the follow list has voted, so just follow the vote. of that neuron, right? So, you know, it's kind of asynchronous and non-deterministic, and eventually the blockchain nervous system, the sort of distributed brain, if you like, will cascade to a decision. Obviously, over time, you know, the follow lists get better, for example.
Starting point is 00:44:13 You might be particularly impressed by somebody on Reddit who happens to advertise the address of their neuron, and you might configure that address into your neurons follow list, right? And the nice thing about the decision, I mean, the nice thing about the system is, obviously, on one hand, it captures the expertise within the community, right? But on the other hand, nobody can know how these decisions are made. It's completely opaque, which is why we call it opaque liquid democracy, because the follow lists exist on the edges of the network, right?
Starting point is 00:44:50 and there's no way of capturing what those follow lists are. And this is very, very important because, for example, let's say, you know, Tom was, you know, the most, you know, given this follow graph amongst the neurons on some topic, Tom was the most influential person in the community. Well, there's a number of problems. I mean, firstly, somebody might see, realize this and seek to kidnap Tom or extort him or influence him. Or more likely, you know, if some controversial decision was made that upset a regulator, for example, you know, somebody might try and sue him or, you know, some government agency, you know, might seek to, you know, do something bad. But as it is, you can't see how the brain makes its decisions. No, I love this. I think that's very exciting.
Starting point is 00:45:40 And it's one of the, I mean, liquid democracy, right? maybe some people can relate to it a little bit in the existing political system. So today we kind of wrote for somebody maybe to become a member of parliament and then they just make whatever, all the decisions as is kind of a delegate. And this in a way is almost a more fine-grade way of creating delegates where you can say, you know, foreign policy, I'm going to follow this person. And on this other policy, I'm going to follow this other person. So I think that's very exciting.
Starting point is 00:46:16 Now, one question, you call this an AI. Why an AI? It doesn't sound like, I mean, it's more like an existing democracy than in AI, it sounds like to me. Well, you know, to some extent, it's an easy way of explaining what it is. But there are some differences between normal liquid democracy and certainly major differences between the blockchain nervous system and traditional democracy. So rather than just a simple, delicate democracy,
Starting point is 00:46:52 what we have is a sort of dynamic trust graph, I suppose, where, you know, I could follow you, you could follow Tom and so on, ad infinitum, right? And these, you know, there's a graph of follow relationships that is not only dynamic in the sense people can change it all the time, but the way that, you know, it comes to decisions is very much non-deterministic and dependent on timing and things like that. So the dynamism is important too because the system improves its ability to make decisions over time as people update those follow relationships. So, you know, it's not like a traditional piece of artificial intelligence like a neural network or a Bayesian classifier, but actually those things are completely
Starting point is 00:47:44 different to a brain as well. So in some senses, you know, we've got a kind of distributed wisdom of the crowds process through, you know, this very dynamic algorithmic system of, you know, neurons following each other. So, I mean, our, arguably, you know, we've got more of a claim to be an artificial intelligence than a basing classifier or a neural network. Let's take a break to talk about the Ledger NanoS, the new flagship hardware wallet by Ledger. I'll let Ledger's CEO, Eric Larchavec, tell you all about how simple the NanoS makes it to securely store all your private keys.
Starting point is 00:48:25 The Ledger NanoS is our latest generation hardware wallet. This is a multi-currency hardware wallet. It has a screen and buttons to manage everything on screen. You can generate a new seed, restore a seed, or set up your pin on the device. Your seed will never be exposed to the host computer. On the nano-s, you have different apps. You have the Bitcoin app, you have the Ethereum app, and you have the Fido U2F app for strong authentication, for instance, with Google, Dropbox or GitHub. You can manage your cryptocurrencies with your cryptocurrencies with
Starting point is 00:49:02 the ledger wallet Bitcoin Chrome app or the ledger wallet Ethereum Chrome app. With the nanoS, all your Bitcoin and Ethereum addresses are derived from one unique seed. With one seed you can have in the same time Bitcoin, Ethereum, Icelium Classic Balances. And also, if you restore your seed, you will also recover all the keys associated to other apps such as FidoU2F, SSH, GPG. So it's very simple, just one seed and multiple applications. The NanoS sets the new standard in hardware wallet security and usability. You can get yours today at ledgerWallet.com.
Starting point is 00:49:42 And when you do, be sure to use the offer code Epicenter to get 10% off your first order. We'd like to thank Ledger for their support of Epicenter. So let's dive into the economics of DFINITY and specifically with regards to the neurons. talk about the different tokens that will be part of DFINITY. You know, there's a base token, which is DFINITY, and they can be used as fuel for computation, as ether is in Ethereum. They can be used as deposits to create neurons. And by the way, there's like a sort of thought mining reward for neurons. and you receive this discounted by the proportion of proposals you didn't vote on.
Starting point is 00:50:29 So, you know, you would get a pro rata reward for your neuron, depending on how many definitors you deposited into it. The voting power of the neuron obviously will be proportional to the definitors too. And, you know, if you miss half the votes, then you only get half the thought-mining reward you'd otherwise get. That's the second use. and the third use is you can create a mining identity. So, you know, the definitive is the best thought of as participation tokens. You can, you know, the most, I suppose, like, you know, an end user would use them just to pay for computation. But they also play crucial roles in helping the network function, either through its ability to make decisions,
Starting point is 00:51:13 upgrade itself, you know, reverse, mitigate misuse, or all through, you know, people being, able to add new computing resources to the network to make it, give it more capacity. So talk about how these tokens will be distributed or are they mine? What are the sort of monetary characteristics of DFINITY tokens? So we've got two kinds of mining. One is the thought mining. So people who hold neurons will be issued new definities and people that are mining the network in the traditional sense, you know, by adding computational resource, we'll receive definitors too. So you've got like, you know, three different uses. Fuel is computation, creating blockchain nervous system neurons that enable you to participate in governance in a form of thought
Starting point is 00:52:07 mining that can also earn you new definitors. And mining the network in the traditional sense by adding computational, extra computational resource, which again, earns you more definitive. Yeah, so I just want to, I think we talk about a scalability point, the technology itself, we talk about the nervous system. I think another thing worse mentioning is the private public integration. So the one way we design, I think, DFINITY very differently from many of the other kind of blockchain companies
Starting point is 00:52:39 is we don't necessarily see private chain or public chain, or public chain one way against the other. People don't have to make a hard choice. Am I going to do complete private chain and be isolated and silo from the rest of the public services? Or am I going to complete public chain or exposing all my internal business internals? Now they can have a hybrid.
Starting point is 00:52:59 We see a very similar paradigm to the Internet. When you have the Internet, you have the land as well. You don't lose your land, right? You still maintain your VPN or land, but you use the Internet as a common meeting points. You use common protocol like HTTP, email, Twitter, whatever, as a common meeting point for these services. We see a very similar paradigm emergent for the mass adoption of blockchain or trusted computing
Starting point is 00:53:24 is that there will be lots of common services, identities, arbitration, et cetera. These are the basic computing blocks, and especially when we're talking about a more complex system like stable currency. It's not like every single company which wanted to use the dot blockchain has to view their own stable currency. They would much rather prefer using an existing solution. For example, the FI project we're working on, or it could be there some kind of common bank coin, color coin they'd like to adopt, and they can just reuse that service. And DFINITY provide a way to integrate that too. So you can have an internal, a private definite instance or a consortium
Starting point is 00:54:02 definite instance that in your smart contract, you have a little declaration that allows you call into the public affinity service. So all the different private chain can connect to each other and use common blocks. I think that's kind of worse mentioning and changing the how a way people think about. I'm starting to get a better idea of how this works then. So what you're describing is services that would be built on the public chain, and you mentioned a few, so like you could have an identity system, you could have a stable currency, you may have other services,
Starting point is 00:54:33 and on your private chains you deploy with permissioned nodes, known nodes, you simply include sort of as you would in a program, like in a regular application, include libraries to that external public. Exactly. But it's more than a library, though. It's more than library. I think traditional library is, of course, as a static library of a piece of cold. Whereas here we're talking about a network, right?
Starting point is 00:55:00 We're talking about an API of network. Okay. Which is way more powerful. So can you describe then perhaps what kind of use cases you see for that? I mean, I can think of so, but I don't know what types of use cases you envision for this sort of private blockchain also using a public blockchain service. Yeah, I guess the most common use case, I think we talk about a lot is supply chain system. And the real thing about supply chain system, it involves many different pieces, right? Obviously, in a supply chain system, you probably wanted to use.
Starting point is 00:55:33 identity. Imagine a semi-open kind of trade financing and supply chain system of a large manufacturer, hundreds and thousands vendors. Each of them, before they enroll into your system, you might want to do certain identity or reputation check. That's database, not database, but that network or public service exists on a public chain. You call into that chain, valid identity. Next step, someone is in your network. You want to do some sort of trade financing, and you you would need to move the money around. Well, money exists probably maybe as a stable currency on a blockchain. You probably don't want to use ether or DFINITY as an underlying token because of
Starting point is 00:56:13 volatility. So that's the next thing you want to use. Then, you know, the sum transaction happens. There's a dispute. Where's my goods? Or there's some quality problems. You probably want to call into a public arbitration system that resolves, specializes, for example, in cross-border disputes.
Starting point is 00:56:30 We have a network of attorneys, lawyers, arbiters who are providing these services. You could imagine a chain of these services being being called and throughout the lifecycle, something like that. And none of that services particularly, you know, makes sense, I guess, to retrates for internally necessarily. So that's very, that's really interesting in how, I like that approach, you know, I think that currently a lot of companies and startups building blockchain infrastructure are sort of torn between, do I need a private blockchain, do anything the public blockchain. We see banks doing pox on Ethereum, others doing pox on private blockchains. And there's obviously a lot of value in using a public
Starting point is 00:57:13 blockchain. And there's a lot of value in using a private blockchain. And having this hybrid approach or this sort of dependent, one dependent on the other approach is, I think, as a concept, really, really powerful. However, from your point of view, it requires, it does depend upon those services that you build on DFINITY. I'm not sure if you would build them or if community members would build them, but those services need to have, there needs to be some kind of network effect behind them.
Starting point is 00:57:41 Like if you have an identity system, it needs to be widely adopted. If you have a stable currency, it needs to be widely adopted for a consortium of, I don't know, like some supply chain consortium around fisheries or something like that to adopt that. How do you plan to get there?
Starting point is 00:57:58 how do you plan to get to some sort of massive adoption around these public services for all of this other private stuff to be enabled? Well, I mean, just quickly as well, I mean, to answer the question
Starting point is 00:58:16 directly through business partnerships, there's a lot of businesses that you know, would like to use public blockchain, if you want to call it that. Think about it more like, you know, decentralized computers, but they'd like to use public blockchain
Starting point is 00:58:34 facilities sometimes just to link, you know, business clients who want to have private chains and other times to, you know, help them build a private chain more cost effectively or faster and make it more
Starting point is 00:58:50 powerful by linking it into public systems. So there are, you know, it's well known that we're working with Boston Consulting Group digital ventures, for example. You know, we speak to a lot of international companies through that, for instance. And so there's a lot of demand for this stuff out there. And, you know, DFINITY isn't just myopically focused on the business space at all by any means.
Starting point is 00:59:18 But we, you know, do have, you know, strong links to business and do want to kind of help them build out this ecosystem, right? And, you know, currently, you know, there's, I mean, my kind of opinion of bank chains is, you know, they're just, banks are very worried about, you know, blockchain. So they're jumping up and down saying, we've got blockchain. And it's not, not really going to, you know, it'll help them optimize their systems, but it's not the future. The future is to have, you know, the future really rests in the court of open public systems. And, you know, private systems will hang off those, and they'll be able to communicate with each other through these public systems, and also build on public services, like, you know, in supply chain, we talked
Starting point is 01:00:07 to arbitration and density and stable coins, and, you know, maybe there's haulage networks, so people can even, you know, get goods delivered cheaply. And, you know, it's a very interesting business paradigm, because, you know, as Tom says, you know, in the past, you know, we've always been able to build software by, you know, incorporating, linking in pre-existing software libraries. And in the future, people will be able to sort of build live business ecosystems by building on existing ecosystems as though they were kind of components, you know. So, you know, for example, it could be this network of truck drivers, right, that will deliver things.
Starting point is 01:00:51 And you create some kind of supply chain system. You're thinking, hey, I'd love to add some functionality to. this supply chain system so that I get these goods delivered automatically if that's what the sender wants right now you can just link it into this haulage system on the public network and that's immensely powerful you know and a very very attractive model for the business community especially when you're talking about you know the kind of like high-end large companies that would like to leverage, you know, functionality for things like supply chain. Great. Now, with DFINITY, so what's the business model here when it comes to maybe
Starting point is 01:01:34 string labs and or DFINITY? I mean, you guys mentioned that there would be a DFINITY token. So it's the idea that, you know, you guys would own maybe some of this token and then, you know, if the network takes off the token gains in value, that kind of model, or are you planning to develop services or applications on top of it? Can you share anything about what directions you guys are going? Yeah, so I think it's a bit of both. So in definitive, the foundation will be a certain
Starting point is 01:02:13 early contributor pool. There will be many people, including string laps, will be part of the contributor pool. So there is a certain token recommendation that the foundation will recommend, say, okay, here's your only contributor pool. In addition to the donation donors, there will be these pieces.
Starting point is 01:02:30 That's part of that. The other main part of the Stringlas model is to create businesses and commercial service around the edge, right? If you think about the system that we create, a protocol we create are at its core, but there will be a lot of peripheral services around the decentralized protocol.
Starting point is 01:02:48 For example, in the DFINITY network, there will be people who need to provide private chain hosting and provisioning. Configurations, there will be certain business partnerships and creating these common services that we talk about. So there are a number of Z-service that I think String Labs will specialize in. Or even more simply mining, right? Yeah, mining. Yeah, exactly. I mean, in addition, I think the other interesting thing is since String Labs kind of has lots of expertise in building these lower-level network protocols. There's also additional services like Phi. We probably don't have time to cover
Starting point is 01:03:24 that today, but there will be additional these kind of common services that we could view. And around Phi, obviously, they will have its own ecosystem. I guess StreamLab kind of generally think of ourselves very much as an ecosystem beauter. We view open protocols and we provide services around its hedge. Okay, great. So what's the timeline here? When is DFINITY going to launch? So, you know, we just recently incorporated a not-for-profit foundation near Zurich, and I think it's the first such foundation to get full tax-exempt status. And, you know, obviously, you know, string labs has been, you know, providing money to get that made. and there have been some founders who put some initial funds in, and, you know, but it wants to, you know, raise additional funds.
Starting point is 01:04:24 But actually in the first instance, probably there'll just be a kind of like seed funder for the foundation because it takes a while to scale out operations. And then, you know, it may do another funder later on, you know, once technology has been released and people have had the chance to evaluate things like Threshold Relay and see how it works out in the wild. But the timeline, it may be that the seed funder actually happens this year and that this main funder will happen sort of in the spring of next year. But we haven't absolutely decided yet.
Starting point is 01:05:02 But, I mean, you know, we're not trying to push it as well, like some kind of big, kind of slightly alarmed by some of these crowd cells. We're not trying to push it as some big thing. we'd sort of recommend actually that it will be public obviously so everyone who's interested has a chance to make donations and get recommended for definitive
Starting point is 01:05:22 but we sort of recommend in the first instance that only people that are really interested in for example running neurons or creating mining identities actually make donations and get in or actually people that have got interest in building on top of the network
Starting point is 01:05:40 So we expect there'll be some donations coming in from, you know, people that wouldn't normally get involved in these kind of things. And so we wouldn't, you know, we'd sort of encourage people not to speculate on it. And, you know, the seed donations around will probably only raise like a million Swiss francs in value, possibly a bit more, but thereabouts. and then once the we've got these three releases
Starting point is 01:06:14 copper zinc tungsten scheduled at the moment the copper release will have a kind of threshold relay very high performance chain consensus protocol hanging off that and the blockchain
Starting point is 01:06:27 nervous system and the copper prototype will be released before the main donations round and then that will be followed by zinc which is interoperability and tungsten which is the simplified version of our scaling systems. So, yeah, I mean, you know, keep your eyes pinned,
Starting point is 01:06:46 and there will be, you know, a public announcement and a website and so on, probably in the not too distant future. But, you know, the first seed round is going to be capped to a million dollars. And, you know, all these things, you know, it's a very risky investment. And we prefer people just to get in who actually want to participate in the network through thought mining in the blockchain nervous system, or, you know, compute mining, or actually building on the network at this stage.
Starting point is 01:07:17 So if people want to get involved in the infinity and what you guys are building, should they wait until that comes out? There is just something they can do today? I mean, you guys are not on the open source yet, right? So, for example, contributing code isn't something that's possible at this point. Well, you can come along.
Starting point is 01:07:38 work for us, right? And you know, at the moment we're, you know, trying to build out, you know, always, I suppose everyone is, but you know, always wanting to work with great engineers. And, you know, that can come from anywhere in the stack. I mean, of course, we, you know, particularly interested in people who've got low-level systems, programming skills, crypto skills, protocol skills. But, you know, there's also lots of other components to the system, you know, people who are whizzes in writing smart contracts and interfaces and things like that. So, you know, I'd invite anybody that's interested to contact String Labs.
Starting point is 01:08:23 And also the foundation will, you know, be appearing on the web soon, and people could also contact the foundation. To get involved, for example, as a, you know, Kind of like a freelance contributor. And, you know, a lot of the reason we haven't... There is actually, some of our stuff is live, actually. People just don't know what it is. But, you know, we're using this thing called BLS threshold signatures.
Starting point is 01:08:50 And, you know, there's a library out there by going Japan, and we're the reason that all this BLS threshold signature stuff has appeared in it recently. So, I mean, we do actually have open source out there. It's just no one knows what's related to us and what's not. So you guys are open sourcing stuff, but hiding on this guy in Japan. Yeah, I mean, you know, we're an open source company, right? And, you know, we don't believe in patents.
Starting point is 01:09:15 So, I mean, it's not actually an intentional thing at all. You know, it's just, there's just been so much to do and just getting it all together. And, you know, I think it, as a project, we much rather, you know, make sure that we release something that, I mean, the crypto, by the way, other people can use it. It's great. But, you know, that's why, you know, we're only doing a kind of seed funder for the foundation now. We'd like people who want to get involved and donate to actually be able to have a fully functioning client with threshold relay that they can, and they can actually play with it and see how it performs and create a neuron and things like that. So that we don't want to be in a position of trying to, you know, convince people of what we might be able to produce.
Starting point is 01:10:01 we just want to show people. Cool. Tom and Dominic, thanks so much for coming on. It was great talking with you guys, and it's exciting to hear where the projects is going. I think a lot of these new blockchains, new protocols that are coming out are really pushing the boundaries. It's going to be very interesting to see what happens there.
Starting point is 01:10:21 And you're certainly one of them that really seems to be at the very edge of what's possible and what can be done. So thanks so much for your work, and we're thrilled to see where it goes. And hopefully also have you back on at some point. If I, we mentioned it briefly, but that's a very exciting project as well. So hopefully once the affinity is launched, we can also look at covering that. So thanks so much, guys. Yeah, thank you very much for having us on.
Starting point is 01:10:53 Yeah, it's been great. And thanks so much for our listeners as well. we are part of the Let's Talk Bitcoin Network so you can find this show and any other shows on Let's StartBitcoin.com and of course you can download and listen to the show in any podcast application or watch the videos on
Starting point is 01:11:09 YouTube.com slash episode of Bitcoin. Thanks so much and we look forward to being back next week.

There aren't comments yet for this episode. Click on any sentence in the transcript to leave a comment.