Developers can accelerate the execution of complex smart contracts while preserving the privacy of sensitive off-chain data with the Trusted Compute API (TC API). It was launched by the Enterprise Ethereum Alliance (EEA) to improve the scalability and security of for smart contracts by using off-chain compute resources for Ethereum blockchain transactions. Developers implementing the TC API will find that its support for Intel® Software Guard Extensions (Intel® SGX) will help ensure that code and data cannot be observed or manipulated from outside the Trusted Execution Environment.
The Ethereum public blockchain network has amassed over 250,000 developers1, $15B2 in initial coin offerings (ICOs), and a $20B cryptocurrency3.
As opposed to the centralized, institutional trust model of traditional transaction networks, decentralized computational trust lays at the heart of transactions that execute on the Ethereum blockchain.
Intel, along with other Ethereum Community leaders, launched the TC API to extend the notion of decentralized trust to off-chain workloads. With the TC API, transactions can execute in an off-chain compute environment and then return results to the main Ethereum blockchain.
The TC API was developed for both the public Ethereum network, where cryptocurrency is traded, as well as with emerging private Ethereum networks deployed by businesses.
Scalability is a significant issue for blockchain networks. The decentralized nature of a blockchain requires multiple computers to validate a transaction before that transaction can be considered valid. That means more network nodes can slow network performance for on-chain transactions.
Privacy is another challenge for blockchain networks. Multiple parties operate on a common blockchain infrastructure which raises the question: which parties can see which transactions and associated data?
By moving transactions off-chain with the TC API, a developer can choose to use additional hardware for more complex tasks which helps transaction throughput. For privacy, that data can be kept off-chain with less data on the main blockchain.
Developers implementing the TC API will find that Trusted Execution Environments (TEEs) like Intel® SGX play a key role. First, Intel SGX technology can attest that a specific workload has been loaded into the TEE. While the workload is executing, Intel SGX ensures that the code and data cannot be observed or manipulated from outside the TEE. In addition, the workload can cryptographically sign the resulting data and return that data to the main chain. This approach can help ensure that the right workload executes to completion and delivers a valid result.
ConsenSys*, Enigma, iExec*, Microsoft* and Oasis Labs are some of the leading developers to publicly announce support for the TC API with software solutions:
ConsenSys is developing several blockchain ecosystem initiatives that seek to scale to millions of users and billions of transactions. ConsenSys is developing “Layer 2” solutions incorporating trusted compute based on EEA compliant APIs which allow offloading heavy compute and storage workloads to trusted off-chain compute resources, delivering scalability and privacy while maintaining decentralization.
Enigma, a decentralized privacy protocol that is building the privacy layer for the decentralized web, is contributing to EEA trusted compute standards. Enigma believes its implementation of the TC API with stateful computations provides robust cross-organization collaboration opportunities for sharing data responsibly, capitalizing on missed opportunities, and preserving data privacy.
iExec announced availability of their Intel SGX-based scalable solution for businesses to secure blockchain-based computing. This solution leverages the TC API specification, which iExec experts believe is a great milestone for the Ethereum community to preserve privacy and provide trusted computing.
Microsoft is applying enclaves to the blockchain layer with Confidential Consortium Blockchain Framework (CCBF formerly code-named Coco) and Enterprise Smart Contracts to provide scalable off-chain compute for building multi-party, multi-blockchain applications. According to Microsoft, the TC API can help more application developers to access off-chain compute and bring the power of blockchains and the cloud together.
Oasis Labs is building a privacy-first cloud computing platform on blockchain. The Oasis platform aims to help users regain control of their data and unlock the potential of privacy-preserving machine learning and AI to enable fundamentally new applications across many industries. Oasis Labs is working with Intel to accelerate adoption of encrypted enclave technology such as Intel SGX, and usher in a new era of privacy-first computing.
The TC API provides a glimpse into “web 3.0.” It is a world in which distributed services draw on the specific data they need, and consumers gain control over the services they use and the data they share with each service—and perhaps are compensated for use of their data. TC API is the first step in that direction.
Michael J Reed is senior director of Intel’s Blockchain Program Office, where he manages a team responsible for delivering new blockchain ledgers and applications that utilize unique elements of Intel® architecture. Mike has more than 20 years’ experience funding and driving technology ventures related to blockchain, crypto-currency, online payments, RFID, Internet of Things, cloud computing and consumer electronics.
Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.
Notice revision #20110804