Avoid the Middle-Man (Smart Contracts) – Computerphile


GUEST: So, “smart contracts” are rather poorly named, in the sense that that they’re more-properly thought of as ‘applications’; a series of ‘if-then-else’-type clauses for drafting up and executing negotiations. So, the last video I did was on ‘block chain’ technology with a leaning toward Bitcoin and cryptocurrency. Without rehashing too much of that video, a ‘block chain’ is a technology—a distributed ledger– and means of validating and seeing a series of transactions such that no party in the network needs to directly trust or know anybody else. And the first application of this was cryptocurrency, most-notably, Bitcoin. But now people have started talking about using this ‘block-chain’ technology not just for storing transactions of Bitcoins or cryptocurrency but as storing “smart contracts” and running “smart contracts.” INTERVIEWER: Just because we’re using an application that allows me to pay a taxi driver surely I’m still going to need the taxi-lift, ride-sharing application to get me in touch with whoever’s offering the service? GUEST: That gets a little bit further down the rabbit hole and into something called “distributed applications” where, in fact, anyone could—you would have your “smart contract” that is your business logic for negotiating the transfer of funds to taking the Uber case to the driver and the client and you have your front end—you could think of it like your a web developer, like a front-end HTML page to your back-end service. But instead of having that front-end being a web page—it could be a web page, but it could be a desktop application, the sorts of Limewire, Napster; something running locally on your machine and anyone is free to create their own front-end to a given “smart contract” application and distribute it in any way they like so it doesn’t have to be running from one particular website or run by one particular organisation. It could even be put on something called the Interplanetary File System, which is a peer-to-peer networked file system such that it couldn’t actually be taken down or moderated by any one individual in the way a standard website can. It has the potential, at least, to completely remove the middle-man the escrow account because your ‘smart contract’ ends up performing that function. An escrow is a third impartial mediating party—it’s the function of Uber Uber take your money, Uber, importantly, take their cut, and then pays the driver. If you have a “smart contract” taking the place of Uber there’s no middle-man taking a cut. It really is a technology that represents a revolution rather than an evolution. And it’s something where you’re going to move away from ownership of data or ownership of a service to designing the best interface to that service because a service can be put up on the block chain technology used by anyone, viewed by anyone so the best written service that performs the job is the one that’s going to be used most. And what determines whether an Uber-type outfit makes money or not is whether you’ve got the most user-friendly, prettiest app to interface with the “smart contract” and you could charge a sum for using your particular interface to the “smart contract.” But we really are talking WordPress-type—our business logic is gone we’re talking about a user interface, a nice pretty way of interfacing with it so there’s nothing to stop an open-source community or an individual in their garage producing the nicest pretty— a graphical design student produces the nicest Uber app, umm… and distributes it for free because he has the time and because he can. INTERVIEWER: Let’s stick with Uber for now; is it say that the drivers would have to say, “right, I run with this kind of contract” or would they log themselves with two or three different types of contract and then you just find them through–however you find them? GUEST: That’s the other thing though: they’re free to use different contracts, different models. So you could have a “smart contract” that models a taxi-like service for weekdays and a different one for weekends that offers some benefit to the driver for weekends and they can absolutely make use of both contracts. In fact, you can have the same interface to both contracts. So, in terms of the client finding them it’s seemless and they don’t have to know or care about— but in terms of the driver, they’re optimising, potentially, the way they’re getting paid depending on which contract they’re using. And your “smart contract” could model a “luggage allowance”, or something like this so you end up getting a min-van if you’re taking a whole bunch of people and a whole bunch of luggage. INTERVIEWER: Would there be one block chain that the different contracts all stack their data on or would there be a block chain for each of the contracts? How does that work? GUEST: So that’s an interesting question. There are different block chain outfits out there at the moment each with their own sort-of instatiation–or ability–to express “smart contracts.” So in fact, Bitcoin has been expanded to allow some kind of “smart contract” capabilities but it’s not what it was designed for. The platform which is really sort-of making headway, and is a big name in this area of “smart contracts” is something called Ethereum. And Ethereum is a block chain that is designed not primarily to store cryptocurrencies and tokens and transactions but actually to store a global computer state and a series of computational operations. Ethereum can be thought of as a very-large, very-slow, global computer stored on the block chain. INTERVIEWER: How does the money work then? GUEST: Although I said the Ethereum block chain was not primarily a cryptocurrency, which it isn’t you still do pay for things in it with cryptocurrency. So your Ethereum block chain stores a global computer state and a series of computational operations but you pay for performing those operations and you pay in the Ethereum currency which is not Bitcoin, but Ether. And in fact, there’s the translation between the Ether, which is the cryptocurrency and the computational operations which are charged in Gas and there’s a Gas to Ether exchange rate. This is an account on a distributed application that exists for the Ethereum network and essentially, I’ve got this application here, Mist, which I downloaded as my front-end, my GUI, my way of interfacing to the Ethereum network and it’s a browser that allows me to see other distributed applications that are out there and potentially view them as well. So, the distributed application that I’ve searched for here is a service for converting from one cryptocurrency to another, called Shapeshift. And this application—I can search for it through this browser, I can pull it down, I can display it this ‘Mist’ application–this interface is running locally on my machine but it’s negotiating when it’s sending its transactions when I’m converting Ether to Bitcoin or vice-versa. or performing the functions of a given application that I load. It’s then serving as my gateway to the “smart contracts” that are hosted on the Ethereum network and then whatever function I call which I call by sending a transaction is executed on all the nodes in the network in parallel. You’ve got—which is why it’s very slow because you have a redundant queue of this sort of computation, whatever it might be it could, you know, add two numbers together is being performed by every single node and then agreed upon and then the result of that is added to the global state of the Ethereum virtual machine – global computer is updated.

41 thoughts on “Avoid the Middle-Man (Smart Contracts) – Computerphile”

  1. What I ultimately want to see from this technology is the complete replacement of the stock exchange…..and get rid of the requirement to go through institutions/brokers for trading. People place their orders in an open mesh, and the "miners" attempt to match orders together to complete the trades and lock them in the chain. This would allow more options with order legs…..like, maybe I want to buy 100 shares of WMT and short 130 shares of TGT but only if I pay less than $375 for the whole thing and only if SPY is above 235, or some other weird combination.

  2. Intriguing, but there are problems to overcome before this can be put into practice.

    For example, having people act as escrow means that when the real world behaves in unexpected ways, you have a human arbiter that can mediate disputes, whereas with smart contracts if you didn't take every contingency into account in the contract you can have undesirable outcomes.

  3. Who verifies that the contract was satisfied ? Let's say you want to replace Uber, so I make a smart contract with a random driver to take me to the airport. With Uber they can see the GPS coordinates for both of our phones, but does Etherium support anything like this ?

  4. so etherium is a global scale parallel computer, and you pay to perform computations on it,

    what's it computing right now? the billionth digit of pi?

  5. ShapeShift is a centralized service, not a decentralized app. Its website can be accessed without any issue from a regular web 2.0 browser.

  6. I remember Etherium mining was the reason why AMD Gpus were in serious shortage. Its quite interesting how these new mining tech seems to work well on GPUs.

  7. I'm at a complete loss as to what this is or what it's for. My best interpretation is that it is a computerized system for arbitrating that the terms of a contract have been met. But at either end are humans—fallible, inconsistent, and sometimes malevolent humans. So you get your phone out and hail a Smüber and the driver doesn't show up but takes your money, or you are delivered to a destination but refuse to acknowledge that took place. In either case, the fancy smart contract does nothing but keep honest people honest.

    It seems to put a lot of strength into the middle-man which just pushes the problems to the outside. Just as ATM networks are hard to crack, all it takes is a card skimmer, clever social engineering, or good old-fashined force to rob someone. Is the arbitrator really the problem?

    And all this computing power is not free (as in beer) so rather than a percentage going to some literal middle-man / middle-company, it goes to … well … it's drawn toward paying for that computing power.

  8. Being someone who has spent two years on smart contract technology (peer to peer insurance on Ethereum) I can say that this video is not bad. It really is a decent introduction to the topic. One specific quote that really hits the mark is:
    2:52 "You are going to move away from ownership of data (service) to designing the best interface to that service, because the service is on the blockchain and can be viewed by anyone or used by anyone so the best service that performs the job will be used the most."

  9. Too bad Ethereum is not a blockchain anymore… just a very slow SQL run by a centralized group of people who may be (eventually) prosecuted because of the DAO scandal.

  10. very good series. I would add a chapter to talk about the "oracles" and their role in smart contracts. cheers

  11. I found this really hard to follow. I think it was because it went right in at the deep end. Did I miss a previous video? There was a lot of talk about the details of smart contracts before I really understood the overview of what they were. I think that if some real-life examples had been presented at the start, then I would have grasped the rest of the information more easily. Then again, I've just worked a twelve-hour day, so maybe I'm tired! I'll probably visit Wikipedia tomorrow and see if there are diagrams 🙂

  12. Still needs a system (centralised) to set this up. So still needs a type of middleman.

    For example, unless we use barter, we use cash. Cash is centralized.

    So unless every contract is made individually, then we are using a central system, a middle man, to set each contract.

  13. Seems nice, but how does it handle customer protection? Not that Uber has been doing very well with this, but at least when issues arise with them you have a company to sue so they have some incentive to prevent dangerous drivers from working for them. Without that, it would seem that you have no reason to trust that the person picking you up can be trusted with your safety. Do smart contracts have a way around that?

  14. The interesting but it's more of an academic exercise because Uber isn't just the financial aspect of it, they also vet the drivers, and do all kinds of macro management as opposed to what you appear to be proposing which is just ad hoc peer-to-peer, that by definition is micro. As far as Amazon and eBay you still need that big Gathering site to establish the market. You could do away with them but then you would just be on Craigslist which again is macro sized Market, and typically bigger markets are better

Leave a Reply

Your email address will not be published. Required fields are marked *