Betting on Blockchain
Best of: Internet Summit 2017
- Juan Benet - Founder, Protocol Labs
- Jill Carlson - GM, Tezos Foundation
- Moderator: Jen Taylor - Head of Product, Cloudflare
This is a test. This is a test. This is a test. This is a test.
Hi, I'm Jen Taylor, Head of Product here at Cloudflare, and I am really excited to be talking with Juan and Jill about blockchain today.
So just a quick intro.
Juan is the founder of Protocol Labs, a network protocol research and development firm.
He's also the creator of IPFS, which is a decentralized hypermedia protocol, and Filecoin, which is a decentralized storage network.
Jill recently started as the general manager at Tezos, which is a new blockchain protocol and platform, and previously ran strategy at enterprise blockchain startup chain.
So clearly a lot of depth here on the blockchain world.
I'd like to just kind of kick it off.
Can you talk a little bit about what is blockchain, and really what is blockchain useful for?
Yeah, absolutely. I'll give it a go first, and then you can fill in the holes that I'll inevitably leave.
So if you go back to 2008, really the advent of blockchain came with the publication of the Bitcoin whitepaper.
Now interestingly, the word blockchain was not even mentioned in there, but really that was the advent of this new technology, and what the Bitcoin whitepaper solved was kind of a niche problem in mathematics or cryptography at the time called the double spend problem.
The idea here is the idea of the creation of digital cash, and you know, it sounds kind of funny when I talk to, say, my parents about this, because they say, well, you know, Jill, I can log into my Bank of America online portal, and there's my digital cash sitting right there.
But of course, that's not actually cash.
That's a number in a ledger that's maintained by Bank of America, and anytime they want to go and spend that value, they have to do an API call to Bank of America, and then that gets routed through some SWIFT or ACH payment, and then it winds up in, hopefully, my Chase account on the other side.
It's not cash. If it was cash, then they could have just handed me, you know, the $20 bill.
There is no clearing settlement process to that, and this was a problem in cryptography for a number of years of how can we create something that is digital cash that doesn't rely on a third-party intermediary that moves peer -to-peer, but is fundamentally natively electronic?
And this is what Bitcoin really, for the first time, created.
And since then, of course, there's been all kinds of innovations and applications of this form of technology in many other areas.
I think the word blockchain packs a ton of stuff into it, and it gets worse every year.
Every year we try to pile more meaning into one word, and it's useful as a brand.
I think it's like the word Internet was in the early 90s, and like the word the web was in the early mid-90s as well.
There was so much that got ascribed to this one word that the meaning started to get really hard to tease out.
So I'd like to unpack it a little bit and talk about the properties that all of these applications and platforms that are being created right now share in common, to try and zero in on that.
And I will say that there is a proper formal academic definition of a blockchain, and that gets to the problem that Jill talked about, the consensus issue of how do you get a distributed or decentralized consensus among a set of parties in a way that, you know, has a it is not gated by any trusted parties and so on.
And it's about getting consensus on a ledger, right? So a block chain is a chain of blocks that is kind of indelible, that once you insert some information into one of these blocks will get maintained, and that there is clarity at which of potential candidate blocks at the edge of the extension of this chain, of this ledger, is the right one.
Which one is the one that we all agree we should listen to?
And so the formal definition kind of goes to that, and there's a very precise meaning.
But the marketing definition, or the broader social perspective, is that there's a whole bunch of applications and platforms that have been developed over the last few years, definitely since Bitcoin, but even much more so in the, you know, 2012, 13, to now, that all have to do with public verifiability, decentralization in power, and a reliance on a whole bunch of cryptographic methods to achieve those two goals.
You know, a goal of removing power from certain parties' hands on, say, clearing payments, right?
Like, not having banks that could decide single-handedly to clear or not clear a payment, and have a mechanism, a proper Internet-level protocol, that does not place any kind of trust or reliance on any party like that.
And public verifiability is the property of being able to have the rest of society be able to look at this ledger, and check it, and verify that things are correct.
There's a whole other stuff wrapped in there, and maybe we could dice the properties differently, but when you look across the board on all of these applications and platforms, that they have to do with removing trusted third parties from the equation in a big way, sometimes disintermediating entire financial, like, areas of an economy, or establishing a kind of publicly verifiable set of structures that enable you to, like, just write some information to the Internet, look away for, like, days, and know that that's gonna stay that way, that it's not going to change, and that it's going to be correct, that the protocol that parties are going to continue operating is going to...
You can trust the protocol because you don't have to trust any of the parties engaged in the protocol.
So there's an element of removing trust from individual parties, and so on.
So it's a, I don't know, like a whole, that probably is a messy description of all of what's going on, and hard to bucket everything that has the word blockchain associated with it in that, but I think it points to a return to a lot of what people called for in the, you know, early 2000s, and so on, with peer-to-peer tech, and a lot of, like, this really decentralization of the power structures that control the Internet, and it's really about that.
The whole set of movements within the blockchain ecosystem have to do with removing power from entrenched participants.
Now, both of you are doing great work with two organizations that are really working on moving blockchain forward.
Can you talk a little bit about, kind of, how each of these organizations sort of fits within the ecosystem, and then what's currently happening with this technology to help us achieve and realize this vision of this decentralized system?
Yeah, absolutely. Thank you.
So, as was mentioned, I work with the Tezos Foundation. Tezos is a blockchain protocol and platform that can be used to build these decentralized applications.
Now, the innovation of Tezos harkens into something that some of you may be familiar with, which is this concept of a hard fork of a blockchain.
Very recently, Bitcoin hard forked into two different assets, two different networks.
One is Bitcoin, and one is now known as Bitcoin Cash. Now, what a hard fork is in a decentralized protocol comes back to this fundamental idea of decentralization, right?
There are all kinds of great things that decentralization offers.
Juan touched on many of them just now. One problem that it raises, however, is that of how do you push upgrades to this technology?
Generally, when you push an upgrade, you know, there is one centralized party that has proposed it and decides when and how it gets rolled out.
With blockchain protocols, of course, this is much more difficult, and it leads to a lot of very, kind of, politicized infighting amongst the various communities and ecosystems that are built around this technology.
It leads to infighting between users of the technology and other stakeholders, minors, etc.
And this is one aspect that Tezos seeks to solve for.
Tezos does not pretend that we can solve, kind of, the political problems of the debates that will inevitably crop up around the direction of the roadmap of the technology, but it does seek to enable a coordination mechanism.
And, basically, the way that works is that if everyone in this room owned one Tezos token, everyone in this room would have one vote as to how the roadmap proceeds.
Another area that we seek to innovate on is that of making formal verification of both the code base of the protocol and also the applications built on top of them much more simple and easy and accessible.
And that comes back to the language that we've chosen, again, both to build the core protocol and then also to implement applications on top of that, really putting security first.
We believe that this technology is going to underpin, you know, hopefully someday, trillions of dollars worth of industry, and it should be built with that in mind.
So, we work on two protocols, and others, but two main ones, IPFS and Filecoin, and they're part of a stack, and so Filecoin uses or leverages IPFS to do its job.
IPFS is a decentralized hypermedia protocol, so the idea is think of the web and what would happen if the web itself didn't have a notion of locations or sites, but had a notion of applications that can move around anywhere in the network, if it was much more decentralized than it currently is, where content and information is not addressed by where it is or who owns it, but rather by what the information is itself.
So, if I hold a particular picture or a piece of text and you hold the exact same picture or piece of text, they should have the same identifier, the same address, and either of us should be able to serve it to other peers looking for that content.
Today, that's not how the web works at all. The web refers to content and information by where it is, and so the IPFS project is a long endeavor to really rethink the entire stack of how the web works and adjust it to use content addressing, so instead of location addressing, content addressing, to move around the information in the network, to address the information, and to have a much more peer-to-peer structure.
So this is really important for a whole bunch of reasons.
There's problems like how easy it is to censor, how easy it is for content to get lost or disappear, or over time be completely forgotten, how easy it is for content to become hyper-centralized into one data silo instead of being across a whole bunch of different sites that have different authorities or different policies, and also addresses things like efficiency.
When you deal with being far away, long latencies, or channels of very low bandwidth, it becomes much easier to reason about the distribution of content.
If you can move entire sections of the web or entire pieces of content to some remote location and serve them from there automatically at a protocol level instead of having that done by a business or a CDN or something, put all of what we learned about CDNs in the last couple of decades and put that directly into protocols themselves.
And then Filecoin is a way of thinking, OK, well, if you have a decentralized way of creating protocols that organize work in a large network, so things like Bitcoin or Ethereum organize a ton of work in a large public network, things like clearing transactions and doing settlement and all this kind of stuff, can you organize a system to store data for the entire world?
Can you create a totally decentralized market where storage is a proper commodity and you can add racks of hard drives and so on and start mining this currency by storing other people's files?
And so that's what Filecoin is about.
You can think of IPFS as a decentralized replacement for IPFS, and you can think of Filecoin as a decentralized replacement for HTTP, and you can think of Filecoin as a decentralized replacement for the storage cloud.
And so allowing ISPs to participate as being the cloud storage companies. So today we have a hyper-centralized storage system as well, and so it's about removing those barriers.
I mean, it's amazing. Since we've started talking in preparation of this panel and I've come to understand more about blockchain, really the power of that decentralization and the power of this technology to really change the world I think is phenomenal.
If I talk to my mom about blockchain and I ask, when you hear blockchain, what do you think of?
They're thinking of investment banks and making quick money, but you guys get an opportunity to work with the community in such a very rich way.
What are some of the other benefits? What are some of the other use cases that you think we could apply this technology to, that you hope that we apply this technology to?
Well, she might not be so wrong to think of investment banks.
So my background, I began my career actually working at an investment bank. And I think for me that's actually where a lot of the inspiration and resonance of this technology comes from.
I started out as a bond trader. I was getting paid to effectively take bonds from my right hand, pass them off to my left hand, and sell them to a pension fund on the other side.
I was a rent-seeking middleman. And to me that is the real innovation of this technology, is it's not just about decentralization in the sense that we tend to hear about the kind of common use cases of Bitcoin in the early days.
But it's also about really reshaping entire market structures that today depend on these rent -seeking middlemen that sit in the middle.
And what you get when you start to think about that, when you take it to its logical conclusion, is just actually a completely different definition of what it means to own something in digital form.
Today we don't really own anything that's in digital form, or it's very rare to.
Again, it's the Bank of America database representing my ownership, or if I'm a content creator, that lives in some portal, in some walled garden in all likelihood somewhere else.
And again, I'm relying either on the rent-seeking middleman or the existence of that walled garden to provide me that service.
And so that's where I start to get really excited, is to just think about how completely different market structures will look in a few years' time when this technology becomes mainstream.
At its core, all this tech has to do with establishing a decentralized, trustable, because of its trustlessness in the system, computing platform.
A place where you can run programs, and you can encode business logic into these programs and run them, in a way where participants cannot overturn the results, in a way where participants cannot take things back, and there's really no litigation over the events that take place.
They're just programs. So it is the first serious global way, instantiation, of a field called smart contracts, which is what happens to law when you can express a whole bunch of legal agreements in terms of computing programs in a modern-day context.
Law is one of the earliest programming languages in existence, and when you translate it to the digital world that we have today and the mode of execution of the computing systems that we have today, a whole bunch of things change.
Transactions get a lot easier to do if you don't have to draft agreements and think about them in depth every time, but instead you have one stock program that you run automatically through parameters.
And so the major innovations right away, immediately that happened with a lot of this blockchain tech stuff, is that law and finance were right away ripe for changes, in that a lot of ways in which transactions are structured, both in a financial context, things like investments and so on, or in other legal contexts, where you have to think about ownership of certain things or you have to think about governance structures or how do you reason about policies and so on, you have the first real ways of encoding smart contracts to deal with these kinds of issues.
And so right away, finance and law are the things that immediately were available and right away getting changed.
But the potential is massive, and the stuff that this different structure of the web brings up is that you can change pretty much how we do everything in the network, in the web.
You can change how we reason about markets, you can change how you reason about providing services in general, running utilities.
You can think of Bitcoin, Ethereum, and so on as the first public utilities that are completely international, governing themselves and not having any particular entity in any one country that controls it, but rather only perhaps like foundations or corporations that assist their growth, but that's about it.
And so this is a very different kind of thing, and you can run all kinds of services, things like cloud storage, which is what we're heading towards, cloud computing, you can think of social networks and so on as being changed in fundamental ways by these different ways to structure things.
That said, it's going to take a while, so I want to temper everyone's expectations of this tech in that things like UX right now are absolutely atrocious when you think about all the blockchain tech.
Or just the development quality of the platforms is really bad, just to the standards of modern engineers and developers building on top of a normal web 2.0 platform, considering migrating an application into this different context is almost a non -starter because of just how poor the development tooling is at this point.
And it's not hard to see why. All this new tech has to catch up to a decade and a half of development on the centralized web 2.0 model, and so there's a ton of work that's being done now, in the last couple of years now, and in the next year or two, that's going to enable all of the developers of the web 2.0 world to suddenly be able to very quickly, with very few lines of code, instantiate entire markets or governance structures for their applications, or change completely how they maintain these applications.
You'll have developers being able to create something like Twitter and then just put it into the network and never have to worry about maintaining it anymore, just having the creation of protocols and applications in a decentralized way where other participants can contribute to their creation, but without forcing them to be responsible for maintaining this utility.
It's a completely different way of approaching the development of these things, a radically different way of looking at things.
And so that's one of the fundamental pieces of promise here, but it's going to take a while.
And so I think right now is absolutely the right time to get involved.
A lot of the organizations and companies that either hold strong stakes in the Internet right now can look at these pieces of technology and what's being tried and help complete it in a big way, or help build those missing layers of really good consumer UX, really good developer UX.
Formal verification is one of the things that I think is most important in this entire field.
When you have a single 100-line-of -code contract that controls hundreds of millions of dollars worth of value, or billions, right now, today, you really want to leverage all of what you can in computing theory to get the right answer and not trust that people didn't screw up something.
Bugs in the blockchain world are catastrophic in a way that they're not in the Web 2.0 world.
Precisely because there are no third-party intermediaries for me to call and say, hey, wait a second, can you reverse that transaction?
That doesn't work that way in blockchain. No customer support on blockchain.
I have like eight billion more questions I want to ask, but I want to open it up to the audience, because I imagine there are probably a lot of questions in the room.
Do we have questions for the panel? Over here?
So, I'm just a dumb investment banker, and I'm long blockchain and Ethereum and all that, but I bought Ethereum and Bitcoin on Coinbase, and I bought Filecoin through AngelList, and what I don't understand, and I think most people I talk to, even in my industry, is what is mining?
What exactly are they doing? What's the benefit to the community and the technology?
Because I watch documentaries, there's an ROI in terms of the energy and computer power that they use to get these coins or to do this, but can you just elaborate on what the heck mining is?
Yeah, totally. I might have to kick it off.
So, mining is a part of the process in the decentralized...
So, when you think about the consensus protocol that is maintaining this ledger, I'm going to try and give you a very concise answer that is going to open more questions, but hopefully it gets across the point.
You have this decentralized consensus protocol where a whole bunch of parties are proposing candidate values for the head of the chain, and they have to agree on what that value is.
And mining is a way that... Or what's been called mining is a whole bunch of work, like actual resource expenditure that a party or a set of parties in the network have to exert in order to propose a vote on the candidate value.
So, a way to describe it is in the consensus protocol of Bitcoin, you have a whole bunch of people that have computers hooked up that are constantly expending resources on a proposed candidate value in order to give it weight and declare it the winner.
It's kind of like a voting system, in a way, that is using resource expenditure instead of just the signature of a key to demonstrate that.
There's other systems, things like proof-of-stake, which is what this is heading towards, that turn that resource expenditure not into...
Or that requirement not in resource expenditure, but in just having a specific amount of wealth in the system.
Or other different...
Yeah, I'm happy to speak to that very quickly because Tezos uses a proof-of-stake algorithm, which is slightly different from what Juan just described as the proof of work.
So on any blockchain network, you will need a validator at any given time who is batching all of the transactions that we in this room or on the network have all been doing, is verifying that certain things about those transactions are correct, and then is broadcasting that batch or that block to the overall network.
And as he accurately described, in a proof-of-work system, which Bitcoin and Ethereum use, the way that the validator, the miner, gets elected is basically how much computational power they are putting into this system.
Think of it like they're running a random number generator.
Whoever gets the lottery number first wins. So the more compute, the more likely you are to come up with that random number.
The next generation of these systems, we think, will use proof-of -stake.
And so that election process, rather than relying on compute, will rely on, well, how many tokens do you have?
And so if you take that to its logical conclusion, that creates a really nice, clean, new incentive structure around if you are a massive stakeholder in the system, it will be in your best interest for everything to run smoothly and correctly.
And so there are a lot of ways to swap out the Bitcoin proof-of-work function for other things, things like proof-of-stake.
In the Filecoin case, we found a way to do work and have a resource expenditure that also has a valuable side effect.
So in the Bitcoin case, all of this mining and churning and so on is totally useless otherwise.
It's useful in that it's a way to accrue work and resource expenditure in a provable way to lend weight to your proposed value, but it is not at all useful outside of that context.
It's totally wasted. And so we found a way, which is a really hard theoretical problem, we found a way to use valuable storage of files and computational work on top of those files, which we call a proof of replication, and there's another thing called proof of space-time, which shows the resource expenditure you have to do to propose a candidate value and clear the transactions and so on is actually proving to the network that you've stored a whole bunch of files for a particular length of time and so on.
So there's a useful side effect to this. And so if you're going to run networks that are proof-of-work oriented, and that's currently the state-of-the-art, both Ethereum and Bitcoin are proof-of -work, though Ethereum wants to move to proof-of-stake, they haven't yet, then you might as well do useful work as a side effect, and that's what Filecoin is banking on and betting on.
We do think that proof-of-stake is a really, really valuable area of research, and in the coming couple of years, we will see the first major ledgers deployed with proof-of -stake, and we'll see what happens.
Word of caution there, majority of money deciding the future is not necessarily the right thing to do.
That's a whole bunch of arguments, and so governance of these systems is going to evolve dramatically over the next five, ten years.
We're going to probably end up with something very, very different than what we have today, and hopefully we'll be able to transition it carefully.
Otherwise, we might end up with something getting baked into the core of the network, similar to a whole bunch of other protocols that are currently baked into the core of the network that have very difficult power dynamics where controlling wealth will ultimately mean deciding the outcome of a protocol.
Today, you kind of have that with Bitcoin already, in a way wealth can translate to mining power and so on, but there's a few degrees of separation there.
I think decentralizing that, decentralize the power and resources that you put into this kind of stuff, is a very important active area of research already, but needs more.
If I can just hop in there as well.
You're touching on kind of a running joke in the crypto space, which is that cryptocurrency has created far more third-party intermediaries than it's destroyed so far, which is a bit of a depressing thought for those of us who've been around.
But I would urge you and anyone else who's thinking about this problem, certainly urge anyone who's thinking about an idea for a decentralized application or indeed a new protocol, to be very specific about what the problem is that you're going about trying to solve.
This is something that I think Filecoin has done extremely well and is kind of a model in this space.
Because if I am in Venezuela using cryptocurrency to pay for groceries or as a store of value, the trust problem I'm solving there is very, very different from the trust problem that Juan and his team have defined in file sharing and file storage.
And so I think that it's important to be really specific about that, and we're not going to have one protocol to rule them all that is going to solve everyone's different trust problem.
That's where these application layers built on top will become very important.
Okay. I could keep going on forever, but I want to thank you both very much for the participation on the panel today.
I learned a ton.
So we are actually now going to take a short break. There are some snacks over there in the kitchen area, and we'll be back shortly.
Thank you very much. Thank you. Thank you.