Merge pull request #1 from mattopolitan/revise_doc

Revise doc
This commit is contained in:
jiangyy 2020-01-31 16:45:58 +08:00 committed by GitHub
commit 1be635377f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 15 additions and 17 deletions

View File

@ -1,27 +1,25 @@
# mpc
This document is a guide to participating in Multi-party Computation(MPC) phase 2 and verifying the result.
This document is a guide to participate in Multi-party Computation(MPC) phase 2 and verify the result.
## What should I do ?
1. Send an email to tronz_mpc@tronz.io to apply to participate in MPC. Please introduce yourself in the email and tell us your available time. For example:
1. Send an application email to tronz_mpc@tronz.io in order to participate in MPC. Please introduce yourself in the email and tell us your available time. For example:
```
Hi, Tronz,
Hi Tronz,
I'm Brown Jiang, apply to participate in MPC project, my available time is 2020-01-20 ~ 2020-01-22,
8:00~10:00 am, UTC+8. As a student of Peking University, I live in Beijing China now, focus on
Blockchain technology.
I'm Brown Jiang, applying to participate in the MPC project. My available time is 2020-01-20 ~ 2020-01-22, 08:00~10:00, UTC+8. As a student of Peking University, I'm living in Beijing China now, focusing on Blockchain technology.
Your sincerely
Yours Faithfully,
Brown Jiang
```
2. TRONZ will send you an email about the time for you to participate in MPC.
3. When it is your turn, TRONZ will send you a notification email and give you a params file link which you will need to download.
4. Download and install IM tool [keybase](https://keybase.io/). If you don't have an account yet, create an account and add TRONZ' account as your friends. TRONZ's account is `tronz_mpc`.
4. Download and install IM tool [keybase](https://keybase.io/). If you don't have an account yet, create an account and add TRONZ's account as your friend. TRONZ's account is `tronz_mpc`.
5. Prepare your server. Recommended requirements of server requires:
5. Prepare your server. Recommended server requirements:
+ Processor (CPU): Intel Core i5 (sixth generation or newer) or equivalent
+ Operating System: Linux (Recommended) / macOS / Windows 7+
+ Memory: 8 GB RAM
@ -38,14 +36,14 @@ This document is a guide to participating in Multi-party Computation(MPC) phase
```
# git clone https://github.com/tronprotocol/mpc
```
  If git has not been installed on your computer, please refer to [git](https://git-scm.com/downloads) first.
  If git has not been installed on your computer, please download and install [git](https://git-scm.com/downloads) first.
7. On Mac/Linux, in the mpc directory, run following command in your terminal and choose 1 in the following selection:
7. On Mac/Linux, in the `mpc` directory, run the following command in your terminal and choose 1 in the following selection:
```
# sh compute.sh <your_params_link>
```
&emsp;&emsp;On Windows, in the mpc directory, download `params` file, then run:
&emsp;&emsp;On Windows, in the `mpc` directory, download `params` file, then run:
```
# cargo run --release --bin compute
```
@ -54,17 +52,17 @@ This document is a guide to participating in Multi-party Computation(MPC) phase
![](https://raw.githubusercontent.com/tronprotocol/documentation-en/master/docs_without_index/internal-test/mpc-output.jpg)
&emsp;&emsp;Notice: this process could take 0.5 ~ 1 hours according to your hardware capacity and occupy 1.5 ~ 2GB of memory.
&emsp;&emsp;Notice: this process could take 0.5 ~ 1 hours depending on your hardware capacity and occupy 1.5 ~ 2GB of memory.
8. Send your result to TRONZ. Send the file `new_params` by keybase, send `hash` string by email. Feel free to state your os version in email. E.g. windows 7/centos 7.
8. Send your result to TRONZ, including the file `new_params` by keybase, and `hash` string by email. Feel free to state your os version in email. E.g. windows 7/centos 7.
## Dependency
We reuse the phase 2 result of zcash https://download.z.cash/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. After we verify all participants' contribution, we will publish all hash on project [wiki](https://github.com/tronprotocol/mpc/wiki) page. Anyone can do this verification as belows.
We reuse the phase 2 result of zcash https://download.z.cash/sapling-mpc/params as the first `params` of the process. In the end of the process, we generate a 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 the last participant completes his operation. After we've verified all participants' contributions, we will publish all the hashes on project [wiki](https://github.com/tronprotocol/mpc/wiki) page.
## How to verify my contribution ?
After all participants finish the process, we will announce final params at aws. Following as below to verify your contribution:
After all participants have finished the process, we will announce the final params at AWS. Anyone can verify their contribution as below :
```
# cd mpc
# wget https://mpcfilepub.s3.amazonaws.com/mpc/params
@ -72,7 +70,7 @@ After all participants finish the process, we will announce final params at aws.
# tar xvf powersoftau_phase1_files.tar && cp powersoftau_phase1_files/* .
# cargo run --release --features="verification" --bin verify
```
This verification may take about 1 hour and then output all participants' contribution. Find whether your hash is in the list.
This verification may take about 1 hour to output all participants' contributions. Find whether your hash is on the list.
## License