Welcome to Enigma! Start Here. – Enigma
Here you will find a “table of contents” for all things Enigma. This includes everything we’re all about, from the team to the token. We’ll also share some resources for how to follow and get involved with our project, our protocol, and our community. This is a living document that is constantly being maintained by the Enigma team. Scroll down to discover more about Enigma!
Welcome to the Enigma Blog! Whether you’ve followed our project from its earliest stages in 2015 or you’re just learning about Enigma now, we want to make it easy for you to search through our writing, resources, and code.
What is the Enigma Protocol and how does it work?
“We’ve been solving for privacy and scalability since 2015, before many knew what blockchain was and could be… Enigma is one of the most ambitious and critical projects in the decentralization space — the missing piece to realizing a decentralized, more sustainable future.”
– Guy Zyskind, Enigma CEO and co-founder
First researched at MIT, Enigma’s groundbreaking technology enables computation over encrypted data at scale. We achieve this by combining cutting-edge cryptographic techniques (such as Secure Multi-Party Computation) and hardware privacy technologies (such as Trusted Execution Environments) with blockchains. Enigma’s protocol allows users to create privacy-preserving smart contracts, or “secret contracts”.
Blockchains are bad at privacy by design — and as a result, traditional smart contracts suffer from significant limitations. They cannot use data that needs to be kept confidential. Enigma is building the first scalable platform for decentralized applications that can utilize sensitive or private data as inputs. Secret contracts unlock the enormous potential of dApps and can revolutionize industries like finance, credit, gaming, machine learning, healthcare, and many others that depend on the use of sensitive data. They also help swing the balance of power over data back to the individual.
How does it work? Our protocol breaks up sensitive data and distributes it in encrypted form across nodes on the Enigma network. Nodes can then use this data to perform computations without seeing or exposing the raw data itself. As Enigma thus solves for scalability in addition to providing data privacy, we believe that the first decentralized applications with millions of users will be built on Enigma — and that Enigma is the critical missing piece to a decentralized future.
Enigma was first described in 2015 in our CEO and co-founder Guy Zyskind’s MIT thesis as a follow-up to his foundational whitepaper, “Decentralizing Privacy”. These two groundbreaking papers on privacy and blockchains are now some of the most highly cited in the space, with over 500 combined citations. We are proud to have been the first project to recognize the essential nature of privacy solutions to the success of decentralization — and we’re proud to continue leading this critical effort. These whitepapers were also early arguments for separating verification (consensus) and computation as a scalability solution.
Enigma is committed to openness and inclusivity. We are a permissionless, public network, and we build in the open. Our public testnet is already available for you to use, with more releases on the way. Stay tuned :)
Relevant blog articles:
What can you build with Enigma?
Enigma is an extremely versatile and flexible platform. It can be used to solve some of the most pressing challenges in the digital era. To highlight some of these challenges, we created the Enigma Solutions Series: a far-from-comprehensive look at just a few of the ways in which Enigma can be used.
In this series you can read about how Enigma enables secret auctions, how it can decentralize credit scoring, how it can be used for secure voting with TCRs, and how it can help determine whether you are human. In fact, we recently announced eight initial launch partners for our protocol that are already building these important solutions utilizing Enigma’s protocol. We also just showed a demo of “secret voting” at Devcon4, already actively in development on the Enigma testnet.
Enigma also has implications for how data privacy and ownership will evolve in a more decentralized future. We’ve previously written about GDPR compliance and how Enigma can help prevent the next Cambridge Analytica.
The Enigma protocol has critical use cases within the cryptocurrency landscape as well, such as enabling secret, more secure ICOs and enabling decentralized relayers that can prevent front-running.
The above solutions are no means exhaustive! You can contribute your own ideas for potential applications for Enigma on our developer forum.
How can you build with Enigma?
In June 2018, Enigma released our first functional testnet in a dockerized environment — the code is available on our GitHub. We have also released a simulation mode for developers who are not using an SGX-compatible device. We support out-of-the-box interoperability with Solidity, as well as the Ethereum network.
If you have questions and want to talk to some folks in the community or on the Enigma team, you can visit our developer forum at forum.enigma.co and ask away!
Lastly, if you’re already working on a project and you think Enigma could be useful within your stack, fill out this company interest form — we’re always excited to collaborate with other builders!
The Growing Enigma Ecosystem
Enigma is being designed with end users in mind. We’re not just an academic project — we want to build something that works at scale, for both individuals and institutions. We want to make sure at every stage that we’re solving real, tangible problems in the world, and we’re already working with a number of amazing projects that have an urgent need for data privacy and scalability.
One of our keystone partnerships is our collaboration with Intel, which outlines how Enigma will work directly with Intel and utilize Intel’s SGX enclaves to dramatically increase speed and performance of private computations. We’re also proud members of the Enterprise Ethereum Alliance and Decentralized Identity Foundation, focused on building real solutions. We are also a member of the Intel Ingenuity Partner Program and MIT STEX 25.
From the STEX25 website: “STEX25 startups have been identified as particularly well-suited for industry collaboration. These young, vibrant companies have proved themselves with early use cases, clients, demos, or partnerships, and may be on the cusp of significant growth.”
Want to build using our protocol? Submit your interest here.
Want to help us build out key pieces of the Enigma Ecosystem? Apply for an Enigma Growth Grant (EGG) today!
Enigma Nodes and the ENG Token
Enigma performs privacy-preserving computations across a network of computational nodes, taking this demand off of the blockchain. By doing so, Enigma is solving for both scalability and privacy.
Computational fees in the Enigma network are paid with ENG tokens, giving an economic incentive to nodes that perform private computations and form consensus on state. Enigma’s “secret nodes” are similar to masternodes, requiring the ENG token to be staked in order to ensure computations are performed correctly and to secure the network’s integrity. Staking more ENG gives nodes a higher chance of selection for computational tasks and thus receiving ENG as fees. The ENG token can be thought of like Gas on the Ethereum protocol: users pay the nodes on the network to run computations.
Nodes are divided into two types, outlined below. (Further details can be found in this more extensive exploration of Enigma nodes and staking.)
Secret nodes: Secret nodes are network participants that run a node in the Enigma network and ensure secret contracts are executed in a privacy preserving manner. Nodes in Enigma network can be thought of as performing a function similar to miners in Bitcoin.
Consensus nodes: Consensus nodes will operate the Enigma blockchain itself — they validate computations and set the final ordering of state changes. (In our first release, Discovery, these type of nodes are not yet available to run as we instead rely on Ethereum for verification.)
If you’d like to run an Enigma node on your own SGX-enabled machine (or through a cloud instance), you can fill out this interest form to ensure you receive more information when it is released in the near future.
Enigma’s Privacy Technology
As mentioned earlier, Enigma aims to use a combination of cryptography-based privacy technologies like Secure Multi-Party Computation and hardware-based privacy technologies like Trusted Execution Environments. Our team is well-equipped to utilize both technologies effectively, given our expertise in sMPC (dating back to our original whitepapers) and our ongoing collaboration with Intel around secure hardware and privacy-preserving technologies. Here is a short description of privacy technologies and their advantages, taken from our blog on CoinMarketCap.
Known as MPC for short, secure multi-party computation starts by asking a philosophical question. Is there any trusted third party, a supercomputer of sorts, that we can send our data to and trust it to perform computations on our behalf, without potentially leaking our private information? This is the equivalent of envisioning a server that can never be hacked or compromised (internally or externally) — an idealized scenario. Since this is not possible in reality (or else we wouldn’t need security at all), we instead aspire to simulate such an omnipotent and trustworthy machine.
MPC proposes to emulate such a trusted third party by combining untrusted parties. In other words, we can design a decentralized network of computers that will ensure that no data leaks during computation. Each computer in the network only sees encrypted bits of data — but never anything meaningful. The only way to recover the plaintext data is by having all the players in the network collude to leak data (as opposed to gaining control of a secret key). The number of systems needed to reconstruct the data is a tunable parameter that can range from some portion of the system up to all of them.
As opposed to the above techniques, Trusted Execution Environments (TEEs) are a hardware-based privacy solution. In a TEE-based network, secure hardware is used to protect the data that is being used from leaking outside the hardware itself. Using techniques like remote attestation, users of the network can be sure that the encrypted data submitted to the network remains private. The primary tradeoff of TEEs is that you must trust that the hardware has not been compromised. However, performance can be significantly faster than with purely software-based methods of secure computation. Combining the power of TEEs with MPC — as Enigma does — creates a much more robust privacy solution.
Zero-knowledge proofs (ZKPs) are a specific kind of secure computation — and note that they are less general than the above techniques. ZKPs focus on proving/disproving statements. The goal is to have the prover prove to the verifier some argument, without revealing any other information.
The simplest type of ZKP are proofs of knowledge. In this version, the prover must show that he possesses knowledge of some secret information, without revealing it. If the rules of the game were different and we didn’t care about revealing the secret information, then the solution would be trivial — simply show the secret to the verifier. Instead, we must find another way. One significant real life example where ZKP are useful is authentication. One could prove his or her identity by showing they have knowledge of some secret passphrase or a key, without actually providing that secret directly. However this property creates a shortcoming as one can only prove secrets that she has access to — in other words in multi-actor systems such as auctions, we would still need to trust an auctioneer to compare all the bids and reveal the winner and share the secret.
The recent interest in ZKP stems from the introduction of zk-SNARKs (zero-knowledge Succinct Non-interactive ARguments of Knowledge). zk-SNARKs are a special form of ZKP that is also non-interactive — the prover and verifier aren’t required to be online at the same time, and succinct — the proofs are small in size, which makes verification fast. The two major shortcomings of the technology are that, generating the proof is still incredibly slow (proving relatively simple statements would still take minutes), and that the cryptographic assumptions used are fairly new and not well established in academia or industry.
Fully homomorphic encryption (FHE) is a purely software-based solution to privacy. Recall that an encryption is a where you can hide data in a way that it will appear meaningless to anyone except those who have access to the secret decryption key. One shortcoming of encryption is that generally, doing a computation over the ciphertext-space does not affect the ciphertexts in the same way as doing the computation over the plaintext data. If, however, it does, then we call this scheme homomorphic.
Imagine we have two values a and b, and using a homomorphic encryption algorithm we obtain the encrypted values ea and eb. If we attempt to add ec = ea + eb together, then ec would equal an encryption of the sum of a + b. In other words, when ec is decrypted, it would result in the sum of the two integers. Note that for now FHE remains a theoretical advancement, and it is very challenging to make these types of schemes practical for real-world use.
The Team, Community, and Enigma Ambassadors
Since our founding, we’ve seen substantial growth (both in absolute and relative terms) in the number of people who recognize the essential nature of privacy to building a better future. As a team and as a community, we are responsible for educating the broad public about why creating new data privacy solutions is so critical — and why we must disrupt the over-centralized organizations that exploit the behavior of their users instead of returning value. With new types of technologies, we can build the decentralized future we want.
Our team is composed of experienced developers and businesspeople, many of whom were formerly graduate students, researchers, and educators at MIT (where our project began). We have deep expertise in building decentralized technologies as well as data science and data privacy. You can see for yourself just how quickly our team has grown and grown and grown!
At the core of the Enigma community are the Enigma Ambassadors. Ambassadors are an amazing (and rapidly growing!) diverse group of blockchain enthusiasts, developers, writers, designers, entrepreneurs, investors, and poet-philosophers from all over the world in nearly every time zone, all of whom are dedicated to actualizing the Enigma vision of a truly decentralized world. Over 40 Ambassadors in 15 countries function as educators and visionaries that help us drive and realize Enigma’s mission, working directly with the core Enigma team.
We’ve previously published some profiles of active Enigma Ambassadors, including Kristi, Brendan, Josh, Leor, and Celeste. Learn more about the program here, and if you’d like to join us and become an Enigma Ambassador, we’d love to hear from you!
The Future of Enigma
Enigma has previously announced a number of planned public releases, each adding additional functionality to our protocol. This began with our initial testnet release in June and will continue with the upcoming release of Discovery. (Read more on Expanding Enigma’s Roadmap.)
Discovery introduces ‘Secret Contracts 1.0,’ which will allow the entire state of a computation to be encrypted throughout. This finally enables dApp developers to include sensitive data in their smart contracts, without relying on centralized (and less secure) off-chain systems. Discovery introduces networked nodes and node rewards, and will also allow Enigma’s core virtual machine (our computation engine) to support WASM. This allows for most of what’s needed to have oracle functionality already built into Enigma, as well as providing a common computation engine for any privacy-preserving technology we’d like to implement.
Voyager is our second major release, focusing on even stronger privacy for dApps. This will utilize a new Distributed VM that would allow to run general-purpose secure Multi-party Computations (MPC). This would allow developers to choose between different execution engines for their secret contracts — either TEEs (Secret Contracts 1.0) or MPC (Secret Contracts 2.0).
Valiant will introduce a fully open and secure consensus in the Enigma Chain, while increasing performance through the use of more elaborate sharding.
Defiant brings complete chain-independence. The Enigma network will operate its inner Enigma Chain completely independently of other networks. In this release, we will also release major updates to cryptographic protocols (primarily around MPC), which both increase security and decentralization. Defiant is the definitive ‘training-wheels-off’ phase for Enigma.
The Defiant release is by no means the end of our journey. This is just another critical step towards our mission — growing and improving Enigma, scaling our developer community, achieving global adoption, and solving some of the world’s biggest challenges to privacy and true decentralization.
Decentralize This! — Presented by Enigma
As part of our educational responsibility to the community, we wanted to explore the challenges that are holding back decentralized technology from widespread adoption — while simultaneously emphasizing how critical collaboration is to achieving our shared goal of a decentralized future.
“Decentralize This!” is a podcast featuring guests from all over the decentralization space: developers, investors, entrepreneurs, researchers, writers, artists, people in government and enterprise — all individuals who care deeply about building a more decentralized and sustainable world. The question we seek to answer is: How can all these people with different perspectives collaborate to create and scale the technologies we need to shape a better future?
How can I follow the Enigma Project?
We’d love to have you join the community and keep up with our progress and development. We’re committed to transparency and want to enable and community member to interact with and contribute to Enigma. We would love to hear what you have to say and answer your questions.
Enigma Website: https://enigma.co/
Enigma Developers Forum: https://forum.enigma.co/