Manta Trusted Setup

The global private blockchain platform is called Manta. From the ground up, we are creating a scalable, modular, and private network. Developers may create interoperable, user-friendly, high-performance, auditable dapps with end-to-end privacy guarantees thanks to Manta's zero-knowledge cryptography. DeFi, NFTs, GameFi, DAOs, and countless more blockchain applications may all benefit from anonymity thanks to Manta.

What is Trusted Setup?

Your anonymity is safeguarded by the Manta Network using zero-knowledge proofs (ZKPs). We employ a ZK-SNARK called "Groth16" for Manta Pay, and it needs two pieces of public infrastructure: a prover key and a verifier key. A method for creating these keys in a secure manner is the trusted setup.

What are this keys?

Let's take a look at what's going on with the Manta Network using Manta Pay as an illustration. Users can transmit tokens to one another via Manta Pay without risking their anonymity. The way it operates is that users post a ZKP rather than sensitive information (address, token type, quantity) on-chain as they would on Bitcoin or Ethereum. This ZKP serves as evidence that "I am carrying out a legitimate transaction." (Of course, the true statement is a little more difficult)

Therefore, in this scenario, the Manta Pay user is proving the assertion that "I am making a valid transaction," and the Manta Network nodes are verifying it. An intricate mathematical puzzle has a solution in the proof itself. An honest prover (a user who submits a valid transaction) can answer this math problem without much difficulty, whereas an untruthful prover will have a difficult time (someone attempting to submit a fraudulent transaction). A verifier can swiftly determine whether a proposed answer to that mathematical problem is accurate. Importantly, the solution itself conceals any private data, including address, token type, and value. (For technical information, see Groth '16)

The math problem that provers and verifiers must solve and verify is expressed in terms of a set of open parameters that all sides concur to use. The so-called "keys" are these parameters. The prover key and verifier key are the parameters required to assert a mathematical solution and to validate that solution, respectively. Manta Pay users require the prover key to create a ZKP, and Manta Network nodes require the verifier key to validate that evidence. Of course, none of these keys are visible when using Manta Pay, but they are nonetheless involved in the operation of the system.


How do I participate?

Note: This is how to install on Linux, for MacOS and Windows you can see the Official Document here

Update Package and install the required Packages

sudo apt update && sudo apt upgrade -y
sudo apt install pkg-config build-essential libssl-dev curl jq -y
source $HOME/.cargo/env

Installing the Client

git clone https://github.com/Manta-Network/manta-rs.git

Registration

You will add an Ed25519 signature to your work. You must perform the following actions to produce and then register a public key, as only participants who have registered their public key with Manta Network beforehand will be permitted to participate.

cd manta-rs
cargo run --release --package manta-trusted-setup --all-features --bin groth16_phase2_client register

An email address and Twitter account are required. You will get output after providing them that resembles this.

  • Registration form: proceed to the customized link created by the customer (in green above). Answer a few optional questions to complete the registration process. Keep in mind that the data you give the client is carried over in the link to the registration form. Use only a Twitter handle or email address that you feel confident sharing with us. (We don't divulge this info to anyone)

  • Keep Your Secret: place your secret seed phrase (highlighted in red in the image above) on paper and keep it private.

You are now registered. And now let's go on to the contribution stage now that the ceremony has begun.

Contribution

cd manta-rs
screen -S manta
cargo run --release --package manta-trusted-setup --all-features --bin groth16_phase2_client contribute

You will be required to input the secret phrase you saved from the registration process (see above) when you enter that command.

You only need to input your secret; everything else will take care of itself. You will most likely be added to the contribution queue, which will like this.

You don't need to do anything at this time; simply wait with CTRL+A+D pressed in the background, and your contribution will be made when your turn arrives. Keep in mind that you will lose your spot in the queue if you close this assignment. Although you will be sent at the back of the line, you can still repeat the work later to participate.

Your contribution will start right away on the client once you are at the head of the line. The contribution procedure could take a short while. Once more, hold tight and don't do anything at this time. Your completed contribution will be forwarded to our server for validation. You'll observe that.

A confirmation message will be sent to you after the server has confirmed your contribution.


Follow Manta Network

Loading...
highlight
Collect this post to permanently own it.
Dirosa logo
Subscribe to Dirosa and never miss a post.
  • Loading comments...