2.8 KiB
sapling-mpc
This document is a guide to participating in Multi-party Computation(MPC) phase 2 and verifying the result.
What should I do?
-
Send an email to jiangyuanshu@tron.network to apply to participate in MPC. Please introduce yourself in the email.
-
TRON will send you an email about the time for you to participate in MPC.
-
When it is your turn, TRON will send you a notification email and give you a params file link which you will need to download.
-
Download the
params
file. -
Download and install IM tool keybase. If you don't have an account yet, create an account and add TRON' account as your friends. TRON's account is
tron_brown
. -
Run the following code in your terminal to download Rustup and install Rust, then follow the instructions if you are running on macOS / Linux / another Unix-like OS:
# curl https://sh.rustup.rs -sSf | sh
If you are running on windows, please go to rust homepage for installation instruction.
- Obtain the source code of project sapling-mpc:
# git clone https://github.com/tronprotocol/sapling-mpc
If git has not been installed on your computer, please refer to git first.
- Put
params
file in the sapling-mpc directory, then run:
# cargo run --release --bin compute
When it’s finished, you will get a new_params
file and a hash
which you will need to memorize. You can find the hash
and new_params
as shown below:
Notice: this process could take one to four hours according to your hardware capacity and occupy 1.5 ~ 2GB of memory.
- Send your result to TRON. Send the file
new_params
by keybase andhash
by email. Feel free to state your os version in email. E.g. windows 10/centos 7.
Dependency
We reuse the phase 2 result of zcash https://storage.googleapis.com/sapling-mpc/params as the first params
of the process. At the end of process, we generate the random beacon by using one Bitcoin block's hash as the seed of pseudo random number generator; The block's height will not be determined until last participant completes his operation.
License
Licensed under either of
- Apache License, Version 2.0, (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.