A startup says it has tackled a long-standing problem that has kept smart contracts from responding to actual events.
by Mike Orcutt November 19, 2018
You have probably heard that blockchain technology and "smart contracts" are going to revolutionize our lives.
Recommended for You
250 pages of internal Facebook files were just dumped online—here are the 6 key takeaways
The 6 reasons why Huawei gives the US and its allies security nightmares
Universal income vs. the robots: Meet the presidential candidate fighting automation
Canada has arrested Huawei’s CFO for extradition to the US
So much for that hope of reaching peak climate emissions
But there’s a problem: before smart contracts can do anything really useful, they need a reliable way to connect with events in the real world—and that has proved impossible so far. This is the so-called "oracle problem," a technological challenge that is still hampering any chance that blockchain will break out and become a part of our everyday lives.
Until now, perhaps. A startup called Chainlink is combining its software with a trusted hardware system called Town Crier, developed by a leading academic cryptocurrency research group. Together, they might be closer than ever to solving the problem.
Smart contracts are computer programs stored in a blockchain. They can be used to automate the unstoppable transfer of crypto-tokens between users, according to agreed-upon conditions. “Oracles” are real-time data feeds that deliver things like weather data, currency exchange rates, airline flight information, and sports statistics to smart contracts.
The idea is that by working together, the two systems can allow blockchain-based services to interact with real-world events with a greater degree of trust than is possible from today’s oracle services. For example, if your flight is canceled but you bought flight insurance, a smart contract might instantaneously pay you after getting an update from a trusted source of flight times.
So what’s the problem? The oracle services introduced to date defeat the purpose of using a blockchain in the first place, says Chainlink’s CEO, Sergey Nazarov. In Ethereum, for example, all the participating nodes in the network compute every smart contract, making the programs virtually impossible to shut down. But today’s oracle services are too centralized, says Nazarov. They represent single points of failure that make targets for tampering.
That means smart contracts lack reliable access to real-world data. Without that, they are “like a city with no electricity,” says Ari Juels, a computer science professor at Cornell. “There’s not much interesting stuff you can do.”
Juels and colleagues at Cornell’s Initiative for Cryptocurrencies and Contracts have developed Town Crier, which they describe(PDF) as a “high-trust bridge” between the Ethereum blockchain and HTTPS-enabled online data sources. The core component is a program that runs inside an isolated piece of hardware called a secure enclave.
The enclave’s function is to protect the program from malicious attacks and keep the computation confidential. It receives queries for data from smart contracts—for example, a flight insurance contract may query whether a flight was canceled—and then it retrieves answers from websites and relays them back to the blockchain. Using cryptography, and assuming trust in the hardware, it provides proof to the flight insurance contract that the data really came from Town Crier and hasn’t been messed with.
Town Crier may be more trustworthy than other data feeds, but on its own it doesn’t offer the reliability that decentralized systems do. That’s where Chainlink comes in. Its software orchestrates decentralized networks of oracles to draw on multiple sources of data for smart-contract-based services so that they don’t have to rely on a single one.
Using cryptography, the Chainlink service provides proof on the blockchain that the data is in fact the information it committed to delivering. Customers can pay for different levels of decentralization, and the nodes can make money in return for submitting data. Nazarov says the combination of Chainlink’s software with the Town Crier hardware system is the first “provably secure, decentralized oracle network.”
Chainlink has partnered with several smart-contract projects to demonstrate its oracle network. For example, a project called OpenLaw, which is developing smart-contract-based legal agreements, is using a Chainlink oracle to determine exchange rates between ether and US dollars at a given time. “I don’t know if anyone has fully solved the ‘oracle problem,’” says OpenLaw cofounder Aaron Wright. But he says Chainlink and Town Crier are a “good first attempt.”
Collected from MIT Technology Review