Confidential Computing Redefines Decentralization
Every blockchain company worth its salt claims to be decentralized in one way or another. While decentralization is a protean term, there is one meaning that cuts to the bone of the concept: Decentralization means giving individuals power over the code that processes their data.
“We have long been able to protect data at rest and in-transit with end-to-end encryption. But running code on that data required decryption — slicing open a gaping security hole that meant personal data was manipulatable by the third party that controlled the code. Confidential computing protects data in use for the first time by cordoning off a black box within the CPU that decrypts, computes on, and re-encrypts data so privately that not even the local operating system knows what’s happening. This is confidential computing.”
Every blockchain company worth its salt claims to be decentralized in one way or another. While decentralization is a protean term, there is one meaning that cuts to the bone of the concept: Decentralization means giving individuals power over the code that processes their data.
It’s counter-intuitive, but having control of the code that processes your data is arguably even more important than controlling the data itself. To quote Andreas Antonopoulos:
“If you control the code, you control where the data is being processed. It, therefore, doesn’t matter if the data is decentralized at first; it will eventually centralize to the place where it’s processed and manipulated.”
The internet was a web of self-hosted websites in the fetal days of the mid-90s. The facebook before Facebook was running a server out of your house that hosted a web-page with your bio on it. The early internet was decentralized because everyone controlled the code that ran their website.
Most new networks start out decentralized before an organizing institution coalesces power. This holds true for political factions as well as computer networks. To join a network while it is still decentralized often means becoming a pariah. In 1995 Bill Gates went on the Letterman show where Dave said: “I think one of these days I’ll get one of these deals [computers]…” after taunting him. The internet was still decentralized and so its users were outcasts worthy of mockery.
The entry barrier and the invitation to mockery early internet users experienced then are similar to die-hards that run blockchain full-nodes now. When I set up my first Ethereum mining rig in early 2016, my friends told me to “move on from blockcoin.” Ethereum is decentralized. But in both cases, decentralization meant uncool and arduous.
Today the internet is centralized and accessible, so everyone uses it. But the centralization of execution comes at the cost of having your data manipulated: Sharing a photo on Instagram? First, you’ll have to share your location, facial recognition data, and media library. Playing a song used to be an anonymous act. Now Spotify wants your location just to stream music.
Ethereum, in theory, offers a respite: All the decentralization of the early internet with the power and ease of modern applications. How? You decentralize the execution of code. The irony is that this process of re-decentralization invited the same negative reaction that the initial decentralized internet inspired in the first place. Is decentralization just rogaine for uncoolness?
Maybe. At least as long as decentralization implies clunky and slow. Ethereum and web 3.0 is still too slow and costly to compete with web 2.0 at any scale. The DAO hack brought the Ethereum experiment to its knees in 2016 when 15 percent of the total Ether supply was locked into a single smart contract that malfunctioned. DAO included, the early use cases of Ethereum have been primarily financial: ICOs to fundraise for startups in 2017, and decentralized finance to disrupt Wall Street today. Ethereum is a gamble where the dice are still rolling. We don’t know what the final result will be.
The primary challenge Ethereum faces is decentralizing the execution of code at scale using only a blockchain. Blockchains are trust machines that set a high bar for what gets added to them. Their slowness is a feature, not a bug. But what if we used Blockchain as a single source of truth to manage scarce digital properties like money and authentication credentials while leaving the large-scale, decentralized execution of code to other, more scalable technologies?
One such technology is called confidential computing. Confidential computing has been around for decades, but it received a major boost in 2015 when Intel introduced SGX to keep data secure while in use. We have long been able to protect data at rest and in-transit with end-to-end encryption. But running code on that data required decryption — slicing open a gaping security hole that meant personal data was manipulatable by the third party that controlled the code. Confidential computing protects data in use for the first time by cordoning off a black box within the CPU that decrypts, computes on, and re-encrypts data so privately that not even the local operating system knows what’s happening. This black box is called a Trusted Execution Environment or TEE.
In addition to Intel SGX servers, TEEs are also applicable in smaller form factors for edge IoT devices, where critical security, authorization, and cryptographic processes that are typically run on a centralized server are run locally on the device itself. This zero-latency approach to computation “on the edge” is paramount when a self-driving car has to decide whether to slam on the breaks when a pedestrian jumps in front of them.
Interestingly, this concept of distributing the workload of a centralized server to a distributed network of nodes/devices is what underpins both blockchain and edge computing — it’s no wonder why when combined, they have the power to change the computing landscape forever. IoTeX’s soon-to-be-released Pebble, built in partnership with Nordic Semiconductor, is one such edge device with a TEE built-in to provide end-to-end verifiability of all data generated as well as all edge computations performed. Pebble is the swiss-army-knife of trackers offering GPS, vibration and shock orientation, temperature, gas humidity, pressure, and ambient light readings.
Confidential computing means that users can be confident that the code run inside a TEE is both tamper-proof and secure, eliminating the need to trust in a central party. In fact, it can even be said that a TEE-enabled IoT device is a proxy for a blockchain — both are unbiased third parties that provide verifiability of all inputs, processes, and outputs. When combined, the blockchain does what it does best by issuing trusted credentials to users and devices for provenance and immutability of data, while TEE-enabled servers and edge devices do what they do best by executing code on that data in a trusted way at scale.
IoTeX’s tech stack embraces this potent combination and re-imagines what decentralization means for the Internet of Things (IoT). Because confidential computing occurs at the hardware level, its ability to decentralize device networks is as obvious as it is revolutionary.
About IoTeX
Founded as an open-source platform in 2017, IoTeX is building the Internet of Trusted Things, an open ecosystem where all “things” — humans, machines, businesses, and DApps — can interact with trust and privacy. Backed by a global team of 30+ top research scientists and engineers, IoTeX combines blockchain, secure hardware, and confidential computing to enable next-gen IoT devices, networks, and economies. IoTeX will empower the future decentralized economy by “connecting the physical world, block by block”.