“Privacy is the foundation of free societies”. -Don and Alex Tapscotts
Introduction
Like any other emerging technologies, blockchain has its own challenges to solve for mass adoption. This article explains Enigma platform focused on solving Privacy on blockchain using cryptographic techniques.
Enigma is a decentralized off-chain computational platform supporting both encrypted data storage and computation with cryptographic guarantees for privacy. To achieve this Enigma platform uses Secure Multi-Party Computation, a technique used to compute over encrypted data. Enigma is not yet a blockchain but supports secret contracts (a variant of smart contracts) and has Enigma (ERC20) token to incentivize the participating nodes. This article attempts to provide a high level view of the platform. To get a deeper understanding the reader needs to be familiar with complex cryptographic techniques related to encrypted data computing and blockchain echo system. Let’s unpack the above statements to understand Enigma’s value proposition.
Enigma platform’s purpose is to complement and enhance blockchain platforms by allowing applications to securely store, securely compute the data on its platform with privacy guarantees. The client encrypts the data and sends to the Enigma platform for storage, which distributes the data across multiple nodes using modified Kademlia Distributed Hash Table (DHT), ensuring each node has seemingly meaning less data and no single node has all the data. Enigma platform supports #secretcontracts, a variant of smart contracts with multi party computation techniques, which allows parallel processing of the encrypted data by participating nodes. The secret contract expands on smart contracts in that they not only solve for correctness, but also for privacy, because they can hide the data completely from the nodes. This key privacy feature could accelerate enterprise wide adoption of blockchain by removing smart contracts dependency on centralized off chain solutions. The secret contract execution is efficient, as the data is chunked up, executed in parallel and the computational overhead of MPC protocols compared to computing “in the clear” is relatively small. In comparison, smart contracts on platforms like Ethereum where every computation is run by all node of the blockchain, using up lot of hash power. The Enigma platform is working towards the architecture of “privacy by design” by keeping the data encrypted at all times (at rest and during computation).
The #Enigma platform acts as an off chain solution with in a #blockchain echo system, agnostic of blockchain platform and piggy backing on parent blockchain for access control, storing correctness proofs and dispute resolutions(security deposit and fee management). The initial versions of the platforms are tied more closely with Ethereum by using it as a parent platform, supporting Solidity-like language and ERC20 token. The roadmap points to Enigma to create its own version of block chain with a version of consensus algorithm, native token and integration with AION (interoperable blockchain platform) to provide multi blockchain solutions. The notable differences from current blockchain platforms are that the Enigma platform plans to leverage nodes to distribute data storage and compute (secret contracts) rather than replicating the data and compute (smart contracts) across all nodes. At a first glance, the architecture looks divergent, however the convergence emerges when Ethereum and other blockchain platforms implement sharding solutions for scalability.
The Discovery (2018 version) platform executes secret contracts using TEEs (Trusted Execution Environments, see my earlier post on the coco frame work and TEEs, link at the bottom) and Voyager (2019 version) plans to provide a choice of execution using TEE or MPC to compute node data. The Trusteed Execution Environment is a secure hardware assisted isolated environment, where data and code are processed without compromising the information even if the host computer is compromised. The execution environment provides interoperability and performance characteristics, but is susceptible to side chain attacks. The #Multi-PartyComputation (MPC) is a neat cryptographic technique to encrypt data in such a way that participating nodes can perform computation on partially available encrypted data, where the result can be derived by assembling all the node results. Multi-Party computation (MPC) security model can be compromised if enough nodes collude, where the number of nodes required to collude can be tuned to make it extremely hard. The TEE computes the decrypted data in a hardware/software protected environment, whereas MPC computes over encrypted data, eliminating the need for decryption. Note that computing over encrypted data can be performed by two different techniques, Multi Party Computation (MPC) or fully homomorphic encryption (FHE). Secure MPC (Implemented by Enigma) is also additively (partially) homomorphic but not fully homomorphic. Read the links in the Appendix for details on these cryptographic techniques.
To build a distributed and non-colluding node computing platform, a fee based incentive scheme is devised with the Enigma token. Each node operator would provide security deposit to a separate secret contract, which enforces the punishment for collusion or incentives for computing. As the platform is Turing-complete and estimating upfront costs for a contract execution is difficult, the cost of each successful request would be deducted from the balance managed by each node.
Enigma has created Data Market Place, a platform layer that sits between protocol layer and application layer providing a decentralized and secure data infrastructure on top which applications can be built. This current version would be a first step towards MVP and ultimate realization of the vison of Enigma. Catalyst is an algorithmic trading library for crypto assets built on top of Enigma Data Market Place.
Product Roadmap (2018 to 2020)
- Discovery-2018
- Ethereum Integration
- Secret Contracts 1.0 executes using TEEs
- Voyager-2019
- Secret Contracts 2.0 executes using TEEs or MCP
- Migrating Dapps from Ethereum to Enigma chain
- Uses Ethereum as parent chain for additional security until Defiant release
- Valiant-2019
- Upgrade Enigma chain with open and secure consensus
- Performance improvements with elaborate sharding
- Defiant-2020
- Independent Enigma chain with training wheels off
- MPC security and decentralization protocol upgrades
- Moving from ERC20 token to native Enigma coin
Summary
Should the Enigma platform deliver on its promise to compute over encrypted data at scale, it can become a key plumbing tool of decentralized internet. Among other applications, this technology has a potential to realize a holy grail of personal data management on blockchain with single truth of the data, where in the owner retains full control of the data and provides fine grained, time bound access grants to the needed third parties. Blockchain platform with immutable data combined with Privacy by design opens up very interesting use cases and also meet regulatory standards like #GDPR and #HIPPA. The roadmap set by Guy Zyskind’s team is very ambitious and truly transformational and success of the project would hinge upon #SecureComputing at scale and integrating into a multi blockchain echo system.
References
https://enigma.co/enigma_full.pdf
https://blog.enigma.co/defining-secret-contracts-f40ddee67ef2
https://blog.enigma.co/computing-over-encrypted-data-d36621458447
http://www.cs.tau.ac.il/~iftachh/Courses/Seminars/MPC/Intro.pdfhttps://blog.enigma.co/enigmas-ambition-our-latest-roadmap-8d50107ad314
https://enigma.co/marketplace/introduction.html
https://www.globalplatform.org/mediaguidetee.asp
https://www.linkedin.com/pulse/coco-framework-silver-bullet-blockchain-enterprise-mogallapalli/