iExec — The Meta Cloud

Talleyrand
17 min readFeb 10, 2021

--

Cryptocurrency is an extremely fast-paced environment, hundreds of projects emerge each month, tokens and coins rise and die often in one or two years. Some fail to reach their potential, many appear promising but do not deliver, most were doomed from the start and some even intend to prey on the gullible.

From this point identifying the serious initiatives with a lot of opportunities is not so easy. Add the requirement for in-depth researches, background reviews, breadcrumbs, fact-checking and then it becomes a full time job.

As such the goal of the following post is to be a high-level introduction to iExec and what has been developed over its 4 years of existence to become, in my opinion, one of the four or five most cutting edge and groundbreaking projects in cryptos.

Some historical context

Before talking about iExec we must shortly talk about how things were before Cloud Computing, this sends us back to the 20th century.

Back then if you needed a lot of computing power to process a consequent amount of data there were not many alternatives: you had to buy more computers, put them all in a big room and work with that. Obviously this wasn’t a really practical or flexible solutions for the majority of businesses… but this was the best you could do.

This solution was pioneered by a company called IBM and its engineers named it a “Mainframe” (it still exists today, notably in big companies and institutions but has been pretty much replaced by Cloud Computing over the last decade in most sectors). Mainframes were to be the standard for the 40 years that followed their invention in 1960.

IBM 7090/94 Mainframe Computer

Then the late 90s happened with two major trends: the democratization of the personal computer and the rise of something called “the Internet”. With these, computer scientists were bound to come up with innovative solutions, leveraging newly born networking technologies and finally proposing an alternative to Mainframes.

One of them, emerging in the early 00s, was “Grid Computing” (also called Distributed Computing). To oversimplify what Grid Computing is to the extreme: it’s about plugging many computers together (forming a grid, else the name) and have them process a small amount of data each in parallel then merge the partial results in a final one.

Desktop Grid Computing written by Gilles Fedak.

That’s when XtremWeb entered the picture in 2001 as the first fully fledged grid computing solution. XtremWeb is an open source software designed to build lightweight Desktop Grids by gathering the unused resources of desktop machines. The middleware was launched back in 2001 by the INRIA (French National Institute for Research in Computer Science and Automation). This software was initially the work of few computer scientists and among them one called Gilles Fedak who would later be joined by Haiwu He and Oleg Lodygensky to maintain Xtremweb and expand it for more than two decades (16 years later those same people would found iExec).

XtremWeb Architecture

The first advantage brought by Grid Computing over the ways of the past is the reduced costs, an organization could use the hardware it already possessed in different locations to work on a common task, they simply needed to be connected to the same network and from that point it’s purely about software. The second advantage is scalability/flexibility, indeed many of the first grid computing initiatives were scientific in nature like SETI@home analysing cosmic noise or Folding@home simulating how proteins bend. These two properties made it a paradigm shift in the computing world and paved the way to what cloud computing is today.

While arguably less successful than BOINC, XtremWeb would see its deployment in many european and international projects including at the world leading research facility on particle physics: the CERN.

Folding@home

To this day BOINC (the largest grid computing network) still regularly ranks among the top 5 most powerful supercomputers in terms of floating-point operations per second (even though the ranking is a bit more complex than that as supercomputers have architectures designed with dedicated tasks in mind).

But that’s enough history, what you must take from this is that in many aspects Grid Computing is the ancestor of what would become Cloud Computing, all the net protocol-level work would be put to good use to build “the Cloud” in the decade following its emergence. As you can see iExec just happens to be created by some of the people who built these foundations.

Cloud Computing Today

To paraphrase the National Institute of Science and Technology, the “Cloud” is nothing but a huge pool of easily accessible and usable computing resources (like networking components, storage units, computing units and others) which must be available to the intended users round the clock and across the globe over the internet on pay-per-use basis.

As you can see on both these charts, it is both a rapidly growing market worth in the hundreds of billions (projected to reach a multi-trillions figure before 2030) and a very centralized one!

Indeed Amazon Web Services is currently dominating and holding as much as a third of it (this is an important point on which we will come back later), it is a such a pivotal piece of Jeff Bezos empire that it was until recently the only reason Amazon as a whole managed to generate a profit.

Behind this growth is the increasing demand for more digital services from consumers combined with the need from businesses to process more and more data. Such is the demand for computing that the energy requirements to power data centers and the environmental impact are becoming challenges in themselves.

But more than an economic tool, Cloud Computing is becoming a geopolitical issue too: as more and more citizens, companies and institutions migrate the concerns increase on the power given to big Cloud providers like Amazon or Microsoft.

The solution to these emerging challenges? An Open and Decentralized Cloud Computing Infrastructure called iExec.

Before diving in more details and explaining what exactly is iExec or how it works, I thought I would mention it is already part of two initiatives launched by the European Union : DataCloud and Ontochain. Now let’s discuss what iExec really accomplishes.

Commodifying Computations through a Global Marketplace

Commodities according to Wikipedia

Commodities are such that, unlike products, who produces them has little to no relevance, indeed a barrel of crude oil from Texas will give you just as much mileage as one from Saudi Arabia, in nature they are interchangeable or what we call “fungible”.

Computations have the same properties, an operation run on an AWS instance is no different from one run on Microsoft Azure or, as a matter of fact, from any other cloud provider. In fact computations are even more interchangeable than physical commodities (you can’t do more fungible than a mathematical operation).

$RLC aka “digital oil”

Despite this fact, cloud computing still is a service today and as such the Cloud remains a highly centralized walled garden to a handful of companies. iExec’s whole purpose is to disrupt this statu quo, to commodify computations.

iExec’s whole purpose is to commodify computations.

A Decentralized Global Marketplace for Computing Power allows several virtuous properties to emerge in order to fuel this disruption, let’s check them in the next paragraphs.

Level Playing Field

Smaller cloud providers are often cheaper.

Global marketing outreach and brand recognition are the main reasons tech giants get the lion’s share of the cloud market. iExec mitigates this advantage by allowing smaller cloud providers to gain exposure with its marketplace by simply putting in evidence what matters the most: pricing. Being able to change in a few clicks your cloud providers allows any user to get the best rates at all times.

iExec Marketplace in a nutshell.

As such iExec doesn’t compete with the likes of Amazon, Microsoft or Alibaba, it encompasses them in order to create what is the first “Meta Cloud” in history. In effect iExec Marketplace could be described as a Commodity Exchange for computations.

iExec Marketplace could be described as a Commodity Exchange for computations

One Currency — One Marketplace

One common cryptocurrency (RLC) to trade computations removes the headache of having to deal with dozens of different fiat currencies or payment processors. Indeed setting up a global cloud marketplace would simply be impossible with the legacy payment infrastructure. It also opens the door to governance and is an incentive to join as an early actor of the network.

$RLC — iExec Token

But more than that, RLC is the fundamental piece enabling iExec’s consensus method called Proof-of-Contribution. With PoCo RLC needs to be staked by workers in order to incentive valid results, more on that at the end of this post.

A More Efficient Market

While the need for computing power keeps growing at an exponential rate we are nowhere near optimal use of the already existing ressources. Cloud Providers and Cryptocurrency Miners have one thing in common: they wish to maximize their “uptime” in order to make the most out of the hardware they own. iExec allows them to plug in their machines to the network and immediately sell computations to the highest bidder with no middlemen involved.

iExec is a gamechanger as it allows anyone (from individuals to companies) to join and rent his own hardware on the marketplace.

Some research initiatives like folding@home have already proven this model works on a voluntary basis, but iExec brings it to the next level by allowing a completely new economy to emerge from it. One could imagine GPU mining farms in Asia offering their services for 3D rendering or AI training to companies in Europe or America, the use-cases are pretty much endless.

Fog Computing

With the advent of 5G of IoT, concepts like smart-cities are slowly becoming a reality. The underlying concept is to manage transportations, traffic, law enforcement and more based on real-time data collected by sensor devices distributed in an urban area.

However the current cloud infrastructure is ethically and technologically too flawed to allow such a system to emerge. One can wonder if it is wise to surrender control of such sensible public infrastructures to Amazon or Microsoft with a simple contract?

The other issue is one of robustness and resiliency, indeed cloud services outages happen all the time, it remains mainly harmless now as it only concerns web services but what happens the day one of them manages traffic or emergency services?

As we saw earlier iExec solves this fundamental problem by providing a distributed and decentralized cloud solution. Instead of signing a contract with a centralized cloud provider or maintain its own hardware, a municipality can instead integrate iExec in order to continuously obtain the cheapest rates and without the risk of outage as any disruption would be quickly taken care of by another provider.

The video above displays a potential usecase for decentralized applications powered by iExec as smart-city services.

iExec expertise in Fog computing is already recognized in the industry as they were invited to join the OpenFog Consortium back in 2018 which was renamed as the Industrial Internet Consortium last year.

We explored how iExec plans to commodify computations, the consequences on today’s market and the implications for Fog Computing. Now it is time to talk how cutting edge iExec is when it comes to Confidential Computing, the Data Economy and Decentralized Applications.

Dapps, Confidential Computing and The Data Economy

Confidential Computing has been listed as among the top 10 strategic technology trends of 2021 according to Gartner. But wait, what is it exactly?

Client Application running in an Enclave, the service providers has no access to the dedicated memory.

To put it briefly, Confidential Computing allows you to execute code on a third-party machine without the owner of said machine being able to read it.
Such magic trick is possible thanks to a technology called memory “enclaves” present on modern CPU, the most notable of them being SGX by Intel (with which iExec is partnered).

iExec is member of CCC

This technology is a gamechanger in many respects as you will see in the next paragraphs. What you can keep in mind in the meantime is that iExec is the only blockchain project with support for enclaves enabling Confidential Computing.

iExec implemented the TCF in Hyperledger Avalon

In fact iExec is responsible for designing the Trusted Computation Framework (TCF) for Hyperledger Avalon and is part of the Confidential Computing Consortium launched by the Linux foundation. In bonus iExec is ready to be plugged in any permissioned blockchain deployed by private companies.

TCF: The Game Changer Framework

You likely heard at least once that “data is the new gold”, the catchphrase implies that data, once analyzed, provide insight on how to optimize processes and enhance decision making. Many sectors benefit from data analysis but financial markets are probably one of the sectors where fast and accurate decision making is the most valuable and as a result where data engineering is the most advanced.

For example Quantitative Hedge Funds base their strategies on computer analysis of very large amount of data. Renaissance Technologies (the biggest Quant Fund on the planet) has implemented machine learning and AI since the early 2010s. The data itself can range from financial indicators to satellite images monitoring parking lots from chain of hypermarkets in order to estimate frequentation.

However one roadblock encountered by the data economy is how to allow third parties to use your data without de facto disclosing them.

Up to now the conundrum was that companies were accumulating a consequent amount of data but they didn’t want a competitor getting their hands on them by proxy (think Uber selling its datas to another company who then resells it back to a direct concurrent like Lyft or some much more sophisticated scheme).

If you are a company like airBnB and using AWS to run your infrastructure, you are accumulating a lot of precious informations on where people go on vacation, what type of surface they rent, where they rent it, for how long, etc… In short a million of different parameters and a goldmine in terms of analytics for real estate companies and other retail stores.

However there are two main issues in this example:

  1. AWS theoretically knows everything about it too since they have access to all the data in clear when they process it. As such you’re relying on them and their employees being trustworthy so the informations do not leak.
  2. As a provider you cannot monetize the data-set without revealing it to the client/user.
Bezos spying on your Neural Network generated chinese cartoons

TCF solves this by enabling anyone to become a data provider without compromising ownership. With enclaves Amazon cannot look above the data provider’s shoulder anymore and if they try they will merely see gibberish, but more importantly the provider can now monetize the data-set to everyone without disclosing it. McDonald is wondering which district has the highest concentrations of tourists matching their typical customer profile? They can use AirBnB datas to decide where to set up their next restaurants.

Enclave data can only be decrypted by the owner

Many startups and small to average companies would benefit from such data economy when it comes to small or big decisions and the only practical environment for such a data flow is a Decentralized Data Marketplace enabled by TCF, aka: iExec.

If this is still a bit too theoretical to you, then you can try a demo built by iExec leveraging confidential computing.

“Secret mail” flowchart

The demo allows you to receive a mail from a company without giving them your mail address. This pretty much solves all the issues related to data hoarding practiced by many companies and would, for example, nullify the risk of things like the Ledger hack (where millions of people had their private data leaked online) from ever happening again.

iExec and Blockchain Dapps

You probably heard of terms like “sidechains”, “payment channels” or “rollups” recently. Layer 2 scaling solutions are all the rage these days, well helped by chronic congestion and high fees of the Ethereum network. All these solutions are indeed well suited to “scale” little dApps with a few line of codes (for example Uniswap contracts cumulate around 250 lines or 10kb of code) however what is less discussed is the fact that even in the most optimistic cases they can only reach a few thousands transactions per seconds.

While this is enough to scale small dApps this is nowhere near enough to empower bigger scale projects like, for example, a truly decentralized video streaming platform or any kind of resource heavy applications required to transition to a true Web 3.0.

Flixxo is a decentralized video platform partnered with iExec

The other big problem linked to dApps is how to deal with privacy and confidentiality.

Indeed while projects of healthcare or insurance based dApps are plentiful, it is simply not realistic to process patient or customer data on-chain where anyone can see them. Such applications remain pipe dreams without something like iExec TCF to guarantee the confidentiality of patients and clients data.

With all of that in mind it becomes evident that an ecosystem of decentralized applications can only scale with and through iExec integration as an off-chain component.

Proof of Contribution

If you’ve made this far it probably means you are interested about the inner workings of the protocol, I strongly advise to read Hadrien’s “PoCo Series” which explains in details how iExec achieves secure and trustless computations. Otherwise you can read the following short summary quoted from the third post of the series.

The iExec platform requires two entities in order to work:

A marketplace where agents propose their resources and where deals are made using the RLC token.

A distributed computing infrastructure based on the middleware XtremWeb-HEP.

PoCo acts as a link between those two entities. When a deal is sealed, PoCo initiates a consensus which will validate the different contributions made by workers in the middleware. When consensus on the result of the computation is reached, PoCo triggers the relevant transaction which takes place in the marketplace.

As stated previously, different agents have different roles and different incentives. Before describing the protocol itself lets first list those agents:

Workers: They are individuals or companies who own computing resources and are willing to make them available for the computation of tasks against payments in RLC. Similarly to blockchain miners, they want a simple solution that will make their computer part of a large infrastructure that will take care of the details for them.

Worker pools: Worker pools organize workers contributions. They are led by a scheduler, who organises the work distribution. They can either be public and federate resources from anyone or private and try to optimise the management of specific hardware. While not doing the actual computation, they receive a fee for the management of the infrastructure. They compete to attract workers, which they do by achieving an efficient management which guarantees the income of workers.

App providers: They deploy applications on the iExec platform. Those applications can be Dapps using the full potential of blockchain-based decentralized Cloud or legacy applications which could benefit from the iExec decentralized Cloud. They can make their applications available for free or ask for a fixed fee for each use of their application.

Dataset providers: They own valuable datasets and are willing to make them available, in a secure paradigm that protects their ownership, against payments in RLC.

Users: They are individuals or smart contracts paying for the execution of tasks, with or without specific datasets, using the computing resources of workers. They want to make sure that the results they receive are correct.

The iExec Hub & Marketplace: This is a smart contract, deployed by iExec, and without privileged access. It acts as an escrow for the different agents’ stake and ensures the security and transparency of all transaction in the iExec ecosystem.

Decentralized Oracles

As we just saw, Proof of Contribution can be applied to any type of computations in order to make them highly trustable, however there is one domain where it particularly shines: building Decentralized Oracles.

For the people less familiar with the concept of Oracle, let’s begin by pointing that blockchains are “isolated” protocols, they only manipulate data created by agents of the network which are cryptographically proven to be correct and so trustable, this is what is defined as “on-chain” interactions.

This means that if you desire to have data from an external source (Web 2.0), or “off-chain”, interacting with a blockchain (and specifically a smart-contract — Web 3.0) you need a mechanism to guarantee their correctness.

Such mechanism is called an “Oracle” (referring to women in Ancient Greece believed to be bridges allowing men and gods to communicate) and are especially needed to secure DeFi protocols where substantial amounts of value are reliant on correct off-chain inputs.

iExec dOracles

Now if you’ve read the precedent paragraphs it is obvious how fitting Proof-of-Contribution are to build Oracles. Indeed computations ran on iExec with PoCo are highly trustable (almost as good as an on-chain computations), but wait…

What if we mixed PoCo with Confidential Computing capabilities of enclaves so not only a consensus is reached on the results but in bonus the workers can not tamper with the execution?

That is exactly what iExec accomplish with Decentralized Oracles. This unique combination is what makes iExec the most secure and versatile Oracle solution ever created.

Non Fungible Tokens (NFTs) and iExec

NFTs are the lastest trend in the crypto space, they allow to trustlessly prove the ownership of an asset and to trade it directly on the blockchain. Currently NFTs are mostly used to exchange virtual collectibles like game cards or items. However this is only the beginning and the next step is to tokenize all forms of intellectual property.

This concept is particularly interesting when dealing with datasets or even applications or computations power. Such NFTs can be traded on an open marketplace like OpenSea and some projects are already working on enabling NFTs to be used as collaterals. One could imagine valuable datasets being used as collaterals for DeFi loans.

Conclusion

iExec is cutting edge on many aspects: Cloud Computing, Confidential Computing, Data Monetization, Decentralized Applications, Oracles and finally NFTs. If you desire to learn more about iExec feel free to visit the official website and the academy.

Special thanks to Hadrien Croubois for the his efforts to vulgarize the inner complexities of iExec and my fellow oilers for their continuous mastery of Memetics.

--

--

No responses yet