Additionally, this functionality is attractive for many common enterprise use cases, all of which require the use of sensitive data. We outline a few specific examples here to help illustrate the breadth of applications:

Privacy preserving data access / benchmarking

Most organizations share data with third parties either to receive analysis services like fraud detection and benchmarking or to monetize their data. With Enigma, the data and querying capabilities can be represented with secret contracts and limit data liability. Telco, financial services, e-commerce and supply chain are among some industries which can benefit from privacy preserving data access / benchmarking.

Privacy preserving data indexing

In cases where two organizations have different datasets with one or more common fields, it would be possible to merge these data sets based on the common denominator field and run analysis on the combined data set. These scenarios are very common in consortium setups, where for example a bank has PII on a customer and the credit card consortium has spending data. These data sets can be combined based on a common denominator like credit card number in a privacy preserving manner.

Private business logic

Business logic (such as credit scoring engine logic) can be kept private with secret contracts when the business logic is provided to the contract as an input. The execution of these contracts can trigger actions on L1 networks (e.g. credit scoring output can mint an NFT on Ethereum). This would enable different networks to interoperate, achieving higher levels of network effect.

Trusted Compute Specifications and Enigma

Off-Chain Trusted Compute Specification 1.1 can be found here.

This section gives an overview of components from the EEA Specs along with a comparison to Enigma’s Discovery implementation. The goal of this section is to draw analogues between the specification described in the TCS and the implementation in Enigma Discovery.

The following chart describes how Discovery fits the goals of the TCS:

Conceptually, the stated TCS objectives are well aligned with the architectural direction taken by Enigma. Ultimately Enigma’s aim is to support APIs defined in the TCS as well as achieve interoperability with the Hyperledger Avalon reference implementation of TCS.

Contextualizing Enigma in the TCS Cohort

Enigma’s goal is to enable private computation. This means that data inputs remain encrypted to every untrusted party throughout the computation process, while results can be returned to task senders or used to call functions on Ethereum. Enigma Discovery enables many of the same use-cases currently addressed by zero-knowledge proofs, homomorphic encryption, and multi-party computation.

A number of projects are contributing to the TCS, with a variety of use-cases. Projects like iExec demonstrate trusted compute for scalability and show how the TCS-enabled verified computation can facilitate this goal. Chainlink utilizes TCS-compliant verified computation for oracle services with greater security guarantees. These products demonstrate the breadth of applications that benefit from a cohesive approach and standards pertaining to trusted computation.

Aligning Enigma Components with TCS

Below we outline how the individual components of Enigma Discovery align with assumptions made in the Trusted Compute Specification:

Novel Aspects of Enigma’s Discovery Implementation

Discovery introduces a number of innovations:

Encrypted State: Enigma secret contracts maintain encrypted state, enabling users to modify and update the state of secret contracts over time.

Enigma secret contracts maintain encrypted state, enabling users to modify and update the state of secret contracts over time. Gas / fee market for tasks: As Enigma is a public network, our nodes are incentivized to perform computations via a fee model.

As Enigma is a public network, our nodes are incentivized to perform computations via a fee model. “Secret Contracts”: Enigma “secret contracts” are public code, such that users of contracts can see what computations will be performed on the encrypted tasks they send to the network.

Enigma “secret contracts” are public code, such that users of contracts can see what computations will be performed on the encrypted tasks they send to the network. Ethereum Mainnet integrations: Enigma uses the Ethereum network for consensus, and submits a hash of task data to the Enigma Contract on Ethereum whenever a task is kicked off. Enigma is also capable of making callbacks on Ethereum based on the outcome of a secret computation.

Enigma uses the Ethereum network for consensus, and submits a hash of task data to the Enigma Contract on Ethereum whenever a task is kicked off. Enigma is also capable of making callbacks on Ethereum based on the outcome of a secret computation. Public worker network: Workers in the Enigma Network are decentralized and not controlled by Enigma, and they can do work for any user who submits a task.

Confidential State Management

One of the aspects that has not yet been addressed in the EEA Off-Chain Trusted Compute Specification (TCS) is confidential state management. However, there is a strong industry interest in extending the specification to define common mechanisms and APIs that would allow for maintaining a state between work order (task) execution. Currently the burden of complex workflow execution that requires maintaining a state across multiple transactions is completely on application developers.

Enigma has implemented encrypted state in the Discovery release of the Enigma protocol. This enables secret contracts to maintain state in a confidential manner and propagate state changes across all workers in the network.

This is a complex task, considering that the state needs to be maintained in a confidential and privacy preserving manner with non-trivial authentication and authorization policies that include human and attested and trusted non-human actors (e.g. Intel SGX trusted execution environment). Additionally, in many cases the state needs to be replicated in a protected form (enforcing end-to-end integrity and confidentiality) across multiple sites.

There are numbers of aspects that need to be addressed in the trusted compute specification, to name a few:

Authentication and authorization policies for human actors

Authentication and authorization policies for non-human actors (trusted workers)

Enforcing state integrity

Enforcing state confidentiality

State replications across multiple sites and/or requesters (aka end users)

Concurrent state access management by multiple actors

State time-to-life enforcement

Enigma’s expertise is directly applicable to a number of areas listed above. Defining clear and efficient direction and APIs for confidential state management will improve product interoperability and increase trusted compute adoption for blockchain- centric enterprise and hybrid use cases.

More About Enigma

Enigma is a secure computation protocol which is able to run blockchain functions, or smart contracts, on sensitive (secret) data. First founded and researched at MIT in 2015, Enigma’s network of “secret nodes” can perform computations over encrypted data at scale without ever exposing the raw data itself. Smart contracts built with Enigma become “secret contracts”, allowing developers to create thousands of new, valuable solutions. Enigma’s open-source protocol is designed to be blockchain-agnostic, helping solve privacy, scalability, and usability for any blockchain, as well as the applications built on them.

Homepage: www.enigma.co

Blog: blog.enigma.co

Twitter: twitter.com/enigmampc

Other Links

Enterprise Ethereum Alliance

Avalon Specifications

Intel SGX