Enigma: Salad: Development update, Guy Zyskind’s Letter, Governance Capabilities, Community Updates

Paradigm
Paradigm
Published in
15 min readMar 7, 2020

Biweekly update 23rd February — 8th March

Hello to the Enigma community and all crypto enthusiasts!

Most of you already know that the Enigma mainnet blockchain was launched on February 13th, 2020 by over 20 validators from the Enigma ecosystem and community. This mainnet is a proof-of-stake-based blockchain based on Cosmos SDK/Tendermint and secured by a new native coin, Secret (SCRT). Joining the Cosmos ecosystem brings Enigma closer to supporting privacy solutions for a multi-chain ecosystem, including support for Ethereum. One of the most important changes made in this launch is adding elements of on-chain governance to the protocol. This allows members of the community to delegate voting power and influence protocol development, which is fully open source.

Users can submit proposals to the Enigma network with a deposit. A minimum deposit of 1000 SCRT must be deposited within 1 week from when the proposal was submitted. Once it is reached, the proposal enters voting period. During this period, SCRT holders are able to cast their vote on that proposal. There are four voting options: Yes, No, NoWithVeto, and Abstain. Whether a proposal is accepted depends on the result of the coin voting by SCRT holders. Certain requirements need to be satisfied for a proposal to be considered accepted. Read on to learn more details.

The team have been working and iterating on Salad since last August. Salad is an open-source coin-mixer built using Enigma’s data privacy and randomness-generation features. The team have built an API that can mix ETH for any Ethereum application and built a stand alone UI that connects to the API and also worked on integration with MyEtherWallet and Metamask Snaps.

As the team are moving towards building secret contracts on Enigma chain, the approach to Salad changes slightly. Salad will first focus on mixing Enigma native assets like SCRT. The plan is to explore interoperability with the rest of the Cosmos ecosystem, Ethereum, and other chains as well. The team have been working with MyEtherWallet (MEW) team and built a UI / UX integration to MEW.

It should be pointed out that The first version of Salad will work on Enigma chain and will enable transactional privacy for SCRT. In the short term, this may help SCRT holders to anonymously delegate their coins to different validators. Salad for SCRT will not require a relayer/operator. Now users will be able to directly interact with Enigma. This is an improvement towards full decentralization and censorship resistance.

Last but not least, Enigma MPC CEO Guy Zyskind wrote a letter about next steps for the Enigma protocol, community governance, incentivized testnets for secret contracts, and more.

Find out more information about the above mentioned points in this article.

More news to follow!

Development

Github metrics:

Developer activity (from Coinlib.io):

Salad: March 2020 Development Update

The technology behind Enigma enables data privacy for the blockchain ecosystem. That means the inputs and outputs to contracts can be kept secret from the network throughout a computation. As a result, Enigma can also be used to enable transactional privacy: the ability to hide the transaction history of addresses. For the public blockchain ecosystem, transactional privacy is a requirement for widespread adoption.

The team have been working and iterating on Salad, their transactional privacy tool, since last August. Over the past couple of months, they have built an API that can mix ETH for any Ethereum application and built a stand alone UI that connects to the API and also worked on integration with MyEtherWallet and Metamask Snaps.

As the team are moving towards building secret contracts on Enigma chain, the approach to Salad changes slightly. Salad will first focus on mixing Enigma native assets like SCRT. The plan is to explore interoperability with the rest of the Cosmos ecosystem, Ethereum, and other chains as well.

Recap of Salad Work

Salad is an open-source coin-mixer built using Enigma’s data privacy and randomness-generation features.

Salad in Discovery had three primary components:

  • A deposit contract on Ethereum which holds funds to be mixed.
  • A secret contract on Enigma, which randomizes receipt addresses.
  • A relayer/operator who is responsible for coordinating deposits and batching transactions. Discovery’s architecture necessitated a relayer for usability reasons. This was primarily a UX improvement given the limitations of Discovery. The reliance on a relayer not only created a central point of failure, but it also required them to run cryptographic libraries inside secret contracts that slowed down execution performance. This was required because the operator had to relay the user’s recipient addresses in a way that’s decryptable by the Enigma network, but not the operator itself.

For a mix to take place, the following steps would need to occur:

  • The secret contract generates a static keypair to be used for end-user encryption. The key generation takes place inside the enclave, and the public key is published by the contract.
  • The relayer requests the encryption public key that will be used to encrypt the end-user’s recipient addresses and passes the key to users who participate in the mix.
  • Alice selects mix amount and their recipient address. In a single user interaction (metamask interaction):
    - Alice sends the amount of Eth she wants mixed to the Ethereum deposit contract
    - Alice locally encrypts the recipient address using the key shared by the secret contract, and sends her encrypted recipient address to the relayer
  • Bob and others repeat step 3.
  • When a quorum is reached and deposits are verified (by the relayer), the relayer submits all encrypted recipient addresses to the secret contract.
  • The secret contract decrypts and shuffles recipient addresses using randomness.
  • The secret contract calls Ethereum deposit contract to distribute funds to shuffled recipient addresses.

The primary advantage of Salad is its usability — that it is non-interactive, requiring only one interaction per user.

Tornado.Cash, another Ethereum mixer, requires users to:

  • First deposit and create a secret note that they need to securely store
  • Then submit the note (proof) when they wish to withdraw their funds.

ZK-Proof based solutions will always require a withdrawal transaction, while Enigma mixer transactions can be set in motion without requiring a second withdrawal transaction from the user.

The goal has been to create an API that allows all DeFi apps on Ethereum to easily integrate with the Enigma protocol to provide transactional privacy to their users. The team have been working with MyEtherWallet (MEW) team in the past couple of months. they built a UI / UX integration to MEW. We have been able to:

  • Complete UI work per MEW integration instructions and the Enigma specs
  • Execute end to end deal creation and execution using MetaMask
  • Use a client to interact with the Salad Operator, published in NPM

The team have also built a stand-alone UI to interact with Salad and conducted user research to understand UX challenges of mixers. They created an issue for Metamask Snaps and shared their views on improved UX for transactional privacy.

Salad on Enigma

The development team has been exploring ways to integrate secret contract functionality to the Enigma chain. The first version of Salad will work on Enigma chain and will enable transactional privacy for SCRT. In the short term, this may help SCRT holders to anonymously delegate their coins to different validators.

The development team has no plans to abandon Ethereum. They plan to work on supporting other blockchain ecosystems. However, the first version of Salad will be limited to Enigma chain.

Salad for SCRT will not require a relayer/operator. Now users will be able to directly interact with Enigma. This is an improvement towards full decentralization and censorship resistance.

In addition, the use of an operator forced the development team to integrate crypto-libraries inside the contract (the operator must be prevented from decrypting user inputs — see step 1). This meant execution performance of the secret contract was slower than optimal. In addition, since contracts on Enigma can store coins, they do not require a deposit contract.

Going forward the user interactions with Salad on Enigma will look like the following:

  • Alice sends the amount of SCRT to be mixed and her locally encrypted recipient address to Salad secret contract.
  • Bob and others follow step 1).

On the Salad secret contract side, the following will happen:

  • Check whether a quorum is reached after X blocks (currently 2 hours or ~12,000 block) and secret contract has the right amount of SCRT.
  • If 1) is satisfactory, privately decrypt and shuffle all inputs (recipient addresses).
  • Return shuffled plaintext recipient addresses to the deposit contract for distribution of SCRT to new addresses.

source

The Future of Enigma: A Letter from the CEO

Enigma MPC CEO Guy Zyskind writes about next steps for the Enigma protocol, community governance, incentivized testnets for secret contracts, and more.

The Enigma Mainnet

The first Enigma mainnet was successfully launched on February 13th, 2020. This mainnet launch prioritizes stable features, community governance, and decentralization over the inclusion of codebases still in development.

  • The first Enigma mainnetis is a proof-of-stake-based blockchain based on Cosmos SDK/Tendermint and secured by a new native coin, Secret (SCRT) which is used for staking, governance, and transaction fees within the network. Its sole purpose is utility within the network. Node operators for Enigma stake SCRT.
  • Over 20 participating validators from across the Enigma ecosystem jointly agreed on the genesis block of the Enigma blockchain. These initial validators now govern and operate the Enigma mainnet.
  • The new chain now serves as the consensus layer for the Enigma network (replacing Ethereum). This choice preserves Enigma’s ability to support computational privacy for multiple blockchains (including Ethereum) while achieving independence.
  • The new chain is inflationary, with 10–25% inflation per year depending on the amount of SCRT bonded in the network. The target bonded rate is 67%. Any changes to this schedule will be proposed through network-wide voting and therefore will depend on the consensus of the majority of staking power in the network.

There is also delegation, slashing, and new elements of on-chain governance. With governance activated, any changes to inflation can be proposed and voted on by the validators supporting the Enigma network.

  • There is no minimum stake required to participate on the Enigma network. However, network participation is still capped at 50 workers (nodes). The 50 nodes with the highest stake are active in the network. If you are not among the 50 nodes, you can still participate in network staking by delegating your tokens to one of the 50 active workers.
  • Full secret contract functionality is not available at launch, but the Enigma core team is continuing to develop this functionality, which will be voted on by the community for inclusion in a hard fork at a later date. The team work to integrate secret contracts to the Enigma chain. This means that every validator performs every secret computation and they achieve consensus on the results. The team plan to propose to the network an inclusion of a WASM-based runtime running inside Trusted Execution Environments (Intel SGX).Integrating secret contracts enables the protocol to achieve fast consensus (with strong finality — a desired property lacking in PoW chains) and to interoperate with Ethereum and other blockchains. The team plan to shift their focus to achieving interoperability with other blockchains and bringing their privacy solutions to more networks. In this regard, they are exploring contributing to IBC development efforts in the Cosmos ecosystem, as well as continuing their research into other approaches.
  • The team and community still actively support the existing Discovery developer testnet, which remains the best tool for developers building their own secret contracts and applications. They work to integrate secret contracts to the Enigma chain.
  • The Genesis Game will not occur in its current design. Given the new architectural direction and our desire to create an open and permissionless network, the Genesis Game is no longer necessary. Instead, anyone is now able to set up a staking node on the Enigma network or delegate to an active node, enabling a more open, decentralized, and permissionless ecosystem.

The proposed network economics for Enigma will make the protocol more sustainable and secure. There has also been considerable research done on the instability of fee-only networks and the positive relationship of inflation to protocol security.

This new approach allows the Enigma community to independently focus on their vision to bring privacy solutions to every blockchain, without needing to account for protocol-level changes from an external consensus layer.

For token holders

The team have worked to explore legally compliant avenues for facilitating a token swap between the ERC-20 ENG token and the mainnet SCRT coin. But for the time being, they are not able to proceed with facilitating a swap.

The system requirements now for Enigma nodes

  • Importantly, nodes do not require SGX to operate at this early stage. Requirements are similar to other Tendermint-based networks. However, the team would expect this requirement to change as secret contracts are integrated into the network
  • Nodes require 24/7/366 uptime to avoid slashing, and it is recommended that operators set up an Ubuntu server on AWS / GCP / etc. with a public IP. Please consult the public documentation for more information.
  • There is no minimum stake required for the Enigma blockchain.
  • Slashing on Enigma works similarly to slashing on Cosmos.

For developers

  • This is no relevant change for secret contract developers. As secret contract features are proposed and introduced to the SCRT-powered Enigma network, the team plan to release a new devnet for developers that maintains feature parity with the live Enigma network.
  • Working with Rust contracts in Discovery is still the best way to develop applications for Enigma.
  • The existing Discovery Developer Testnet is still the best place to develop secret contract applications. The SCRT-powered Enigma network is being deployed in phases: first transactions and staking, and then smart contracting functionality. If adding contract programming is voted on and approved by the network, they plan to continue development towards these milestones and build additional developer tooling.

How will the new network interact with Ethereum?

One focus is constructing a bridge to Ethereum as well as other chains. The development team is exploring contributing to the IBC efforts of the Cosmos ecosystem. They plan to propose this bridge after the network votes on and accepts the deployment of secret contracts functionality on the Enigma blockchain.

source

EnigmaChain Mainnet

Social encounters

Enigma at ETHDenver

A brief recap of the team’s experience at ETHDenver over February 12th to 16th

At ETHDenver the team had the rare opportunity to get high-quality feedback from developers in person. Several hackers wanted to leverage secret contracts in their projects and encountered issues that the team had to address on the fly. Taariq and Laura, members of the Enigma Collective, remotely provided support and helped onboard potential contributors.

Secret DAO

The team began their Secret DAO experiment, which provided many insights and opportunities. Here is a post introducing the BuffiDAO, and the results. Although DAOstack had to redeploy Secret DAO.

ETHDenver 2020 Finalists, BuffiDAO & Bounty Winners

The team offered three bounties at ETHDenver.

The general purpose bounty winner, Bound, explored using secret access control. Their goal is to empower influencers with cryptoeconominc primitives for social media. By purchasing tokenized artwork, users can support creators and get special access to premium content. The Bound team was looking into using a secret contract to enable artists to share content exclusively with token holders. They encountered a few issues with Discovery, which Taariq helped to resolve.

Director of Engineering Victor Grau Serrat led a workshop which explained how to start hacking with Enigma JS and Secret Contracts on the Discovery testnet. You can watch the full presentation (starting at 7:13:20).

source

Finance

Token holders and the number of transactions (information from Etherscan.io)

An Introduction to Enigma Governance

This is the latest information on how governance works on the Enigma chain.

via Cosmos SDK Documentation

  • Proposal Submission: Users can submit proposals to the Enigma network with a deposit. Once the minimum deposit is reached, the proposal enters voting period.
  • Vote: Participants can vote on proposals that reached MinDeposit threshold. There are four types of votes: Yes, No, NoWithVeto, and Abstain. NoWithVeto counts as No but also adds a Veto. The Abstain option allows voters to signal that they do not intend to vote in favor or against the proposal but accept the result of the vote.
  • Inheritance and Penalties: Delegators inherit their validator’s vote if they do not submit a vote themselves.
  • Claiming Deposit: Users that deposited on proposals can recover their deposits so long as the proposal was not denied with a No with Veto. Deposits are recoverable if the proposal never entered a voting period.

Current Enigma Network Parameters

  • Deposit period: 1 week
  • Voting period: 1 week
  • Minimum deposit amount: 1000 SCRT
  • Quorum: 33.4%
  • Threshold: 50%
  • Veto: 33.4%

Governance Proposal Structure

The below description is adapted from Chorus One’s Overview of Cosmos Hub Governance.

1. Deposits

For a proposal to be considered for voting, a minimum deposit of 1000 SCRT must be deposited within 1 week from when the proposal was submitted. Any SCRT holder may contribute to this deposit to support proposals, meaning the party submitting the proposal doesn’t necessarily need to provide the deposit itself. The deposit is required as spam protection.

If the proposal does not reach the minimum deposit threshold, deposits are refunded. If the proposal is approved or if it’s rejected but not vetoed, deposits will automatically be refunded to their respective depositor. When a proposal is vetoed with a supermajority, deposits will be burned.

2. Voting

When the minimum deposit for a particular proposal is reached, the 1-week voting period begins. During this period, SCRT holders are able to cast their vote on that proposal. As mentioned, there are four voting options: Yes, No, NoWithVeto, and Abstain.

  • Only staked tokens can participate in governance.
  • Voting power is measured in terms of stake. The amount of SCRT you stake determines your influence on the decision.
  • Delegators inherit the vote of the validators they are delegated to unless they cast their own vote, which will overwrite validator decisions.

3. Tallying

Whether a proposal is accepted depends on the result of the coin voting by SCRT holders. The following requirements need to be satisfied for a proposal to be considered accepted:

  • Quorum: More than 33.4% of the total staked tokens at the end of the voting period need to have participated in the vote. If this requirement is not met at the end of the voting period, the proposal is denied.
  • Threshold: More than 50% of the tokens that participated in the vote (after excluding Abstain votes) voted in favor of the proposal.
  • No Veto: Less than 33.4% of the tokens that participated in the vote (after excluding Abstain votes) vetoed the decision.

4. Implementation

An accepted proposal is really nothing without being implemented as part of the software that is run by validators in the network. If a proposal is just offering direction (“signaling”), developers can bake it into a hard fork proposal and pass it to the validators to update the network.

Token Swap Proposal

Burn ENG for SCRT!

Enigma MPC has reached a settlement with the US Securities and Exchange Commission

(SEC) related to the issuance of ENG tokens in September 2017. This settlement clears the way for the development team to focus fully on their original and continued vision: building groundbreaking privacy solutions that improve the adoption and usability of decentralized technologies, for the benefit of all.

ICO Issuer Settles SEC Registration Charges, Agrees to Return Funds and Register Tokens As Securities

Roadmap

Defiant — 2020

Defiant brings complete chain-independence. This is just another critical step towards their mission — growing and improving Enigma, scaling the developer community, achieving global adoption, and solving some of the world’s biggest challenges to privacy and true decentralization.

Enigma’s roadmap does not really end in 2020. Enigma is building a foundation for decades of progress. Enigma is the critical missing technology that can allow for truly decentralized applications and useful solutions.

Source

Partnerships and team members

Check out this page on enigma.co to learn more about the experienced team of technologists, researchers and business people.

Other

Social media metrics

Social media activity:

Telegram

Twitter

Reddit

Medium

Discord

Enigma forum

Social media dynamics:

The charts above show the decline in the number of Twitter and Telegram followers.

The graph above shows the dynamics of changes in the number of Enigma Facebook likes, Reddit subscribers and Twitter followers. The information is taken from Coingecko.com

There are so many ways to get involved with Enigma’s ecosystem! You can:

See also:

Secret Nodes Community Telegram — a community-led group of individuals who care about privacy, data ownership, and are dedicated to supporting secret node runners.

This is not financial advice.

Subscribe to detailed companies’ updates by Paradigm!

Medium. Twitter. Telegram. Reddit.

--

--