diff --git a/.github/PULL_REQUEST_TEMPLATE/pull_request_template.md b/.github/PULL_REQUEST_TEMPLATE/pull_request_template.md index c5f5794..642c8ce 100644 --- a/.github/PULL_REQUEST_TEMPLATE/pull_request_template.md +++ b/.github/PULL_REQUEST_TEMPLATE/pull_request_template.md @@ -62,7 +62,7 @@ Failing to follow the above instructions, will result in the CI checks failing. "template": { "source": "", "commitHash": "", - "paramConfiguration": [""] + "paramsConfiguration": [""] }, "verification": { "cfOrVm": "" @@ -98,7 +98,7 @@ Failing to follow the above instructions, will result in the CI checks failing. - template - an object made of: - source - a string with the URL of the circom file - commitHash - a string with the commit id (needs to be a GitHub commit hash) - - paramConfiguration - an array of numbers with the parameters of the circuit template + - paramsConfiguration - an array of numbers with the parameters of the circuit template - verification - an object detailing how the circuit's zKeys will be verified - cfOrVm - a string with either "CF" or "VM". If "VM" the following must be added: - vmConfigurationType - a string with the VM type - options: diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index 2d828ab..288c010 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -57,7 +57,7 @@ Failing to follow the above instructions, will result in the CI checks failing. "template": { "source": "", "commitHash": "", - "paramConfiguration": [6,8,3,2] + "paramsConfiguration": [6,8,3,2] }, "verification": { "cfOrVm": "CF" @@ -91,7 +91,7 @@ Failing to follow the above instructions, will result in the CI checks failing. - template - an object made of: - source - a string with the URL of the circom file - commitHash - a string with the commit id (needs to be a GitHub commit hash) - - paramConfiguration - an array of numbers with the parameters of the circuit template + - paramsConfiguration - an array of numbers with the parameters of the circuit template - verification - an object detailing how the circuit's zKeys will be verified - cfOrVm - a string with either "CF" or "VM". If "VM" the following must be added: - vmConfigurationType - a string with the VM type - options: diff --git a/ceremonies/README.md b/ceremonies/README.md index 64560bb..198f819 100644 --- a/ceremonies/README.md +++ b/ceremonies/README.md @@ -18,7 +18,7 @@ To request a new ceremony to be setup, you will need to submit a PR with a folde - fill the *p0tionConfig.json* file accordingly: + The title of the ceremony will end up being its prefix. Prefixes are simply the title all lowercase, with dashes (*-*) instead of whitespace. For example, given a title of *Example Ceremony*, the prefix will be *example-ceremony*. + Fill the rest of the fields with the desired data, ensuring that each circuit details are correct, and that you chose the required Verification method. - + In the artifacts fields, please add the correct storage path and bucket name - note that we require both the *r1cs* and the *wasm* files. + + In the artifacts fields, please add the correct storage path on AWS (the URL to the artifacts) - note that we require both the *r1cs* and the *wasm* files. + *Note* that you can use [p0tion phase2cli](https://github.com/privacy-scaling-explorations/p0tion) as follows to verify that the config file is correct: * `phase2cli validate --template $PATH_TO_THE_TEMPLATE` - create a directory inside *./ceremonies* and name it with the *prefix* (detailed in the bullet point above). @@ -65,16 +65,14 @@ The script will upload your artifacts to a S3 bucket of your choice (must be own "template": { "source": "", "commitHash": "", - "paramConfiguration": [""] + "paramsConfiguration": [""] }, "verification": { "cfOrVm": "" }, "artifacts": { - "bucket": "", - "region": "", - "r1csLocalFilePath": "", - "wasmLocalFilePath": "" + "r1csStoragePath": "", + "r1csStoragePath": "" }, "name": "", "dynamicThreshold": "", @@ -101,7 +99,7 @@ The script will upload your artifacts to a S3 bucket of your choice (must be own - template - an object made of: - source - a string with the URL of the circom file - commitHash - a string with the commit id (needs to be a GitHub commit hash) - - paramConfiguration - an array of numbers with the parameters of the circuit template + - paramsConfiguration - an array of numbers with the parameters of the circuit template - verification - an object detailing how the circuit's zKeys will be verified - cfOrVm - a string with either "CF" or "VM". If "VM" the following must be added: - vmConfigurationType - a string with the VM type - options: @@ -116,10 +114,8 @@ The script will upload your artifacts to a S3 bucket of your choice (must be own * "st1" * "sc1" - artifacts - an object with the storage path to the r1cs and wasm on s3 - - bucket - a string with the bucket name - - region - the AWS region where the bucket live - - r1csStoragePath - a string with the r1cs storage path e.g. "test-ceremony/circuit.r1cs" - - wasmStoragePath - a string with the wasm storage path e.g. "test-ceremony/circuit.wasm" + - r1csStoragePath - a string with the r1cs storage path on S3 e.g. "https://test-ceremony.region.amazonaws.com/circuit.r1cs" + - wasmStoragePath - a string with the wasm storage path on s3 e.g. "https://test-ceremony.region.amazonaws.com/circuit.wasm" - name - a string with the circuit name - dynamicThreshold - if selected dynamic timeout please enter the threshold here as a number - fixedTimeWindow - if selected fixed timeout please enter the time window here as a number diff --git a/ceremonies/rln-trusted-setup-ceremony/p0tionConfig.json b/ceremonies/rln-trusted-setup-ceremony/p0tionConfig.json index 6a19722..94805f1 100644 --- a/ceremonies/rln-trusted-setup-ceremony/p0tionConfig.json +++ b/ceremonies/rln-trusted-setup-ceremony/p0tionConfig.json @@ -15,16 +15,14 @@ "template": { "source": "https://github.com/Rate-Limiting-Nullifier/circom-rln", "commitHash": "17f0fed7d8d19e8b127fd0b3e5295a4831193a0d", - "paramConfiguration": [] + "paramsConfiguration": [] }, "verification": { "cfOrVm": "CF" }, "artifacts": { - "bucket": "p0tion-test-definitely-setup", - "region": "us-east-1", - "r1csStoragePath": "withdraw.r1cs", - "wasmStoragePath": "withdraw.wasm" + "r1csStoragePath": "https://p0tion-test-definitely-setup.s3.amazonaws.com/withdraw.r1cs", + "wasmStoragePath": "https://p0tion-test-definitely-setup.s3.amazonaws.com/withdraw.wasm" }, "name": "RLN-Withdraw", "fixedTimeWindow": 3, @@ -39,16 +37,14 @@ "template": { "source": "https://github.com/Rate-Limiting-Nullifier/circom-rln", "commitHash": "17f0fed7d8d19e8b127fd0b3e5295a4831193a0d", - "paramConfiguration": [16, 16] + "paramsConfiguration": [16, 16] }, "verification": { "cfOrVm": "CF" }, "artifacts": { - "bucket": "p0tion-test-definitely-setup", - "region": "us-east-1", - "r1csStoragePath": "rln16.r1cs", - "wasmStoragePath": "rln16.wasm" + "r1csStoragePath": "https://p0tion-test-definitely-setup.s3.amazonaws.com/rln16.r1cs", + "wasmStoragePath": "https://p0tion-test-definitely-setup.s3.amazonaws.com/rln16.wasm" }, "name": "RLN-16", "fixedTimeWindow": 3, @@ -63,16 +59,14 @@ "template": { "source": "https://github.com/Rate-Limiting-Nullifier/circom-rln", "commitHash": "17f0fed7d8d19e8b127fd0b3e5295a4831193a0d", - "paramConfiguration": [17, 16] + "paramsConfiguration": [17, 16] }, "verification": { "cfOrVm": "CF" }, "artifacts": { - "bucket": "p0tion-test-definitely-setup", - "region": "us-east-1", - "r1csStoragePath": "rln17.r1cs", - "wasmStoragePath": "rln17.wasm" + "r1csStoragePath": "https://p0tion-test-definitely-setup.s3.amazonaws.com/rln17.r1cs", + "wasmStoragePath": "https://p0tion-test-definitely-setup.s3.amazonaws.com/rln17.wasm" }, "name": "RLN-17", "fixedTimeWindow": 3, @@ -87,16 +81,14 @@ "template": { "source": "https://github.com/Rate-Limiting-Nullifier/circom-rln", "commitHash": "17f0fed7d8d19e8b127fd0b3e5295a4831193a0d", - "paramConfiguration": [18, 16] + "paramsConfiguration": [18, 16] }, "verification": { "cfOrVm": "CF" }, "artifacts": { - "bucket": "p0tion-test-definitely-setup", - "region": "us-east-1", - "r1csStoragePath": "rln18.r1cs", - "wasmStoragePath": "rln18.wasm" + "r1csStoragePath": "https://p0tion-test-definitely-setup.s3.amazonaws.com/rln18.r1cs", + "wasmStoragePath": "https://p0tion-test-definitely-setup.s3.amazonaws.com/rln18.wasm" }, "name": "RLN-18", "fixedTimeWindow": 3, @@ -111,16 +103,14 @@ "template": { "source": "https://github.com/Rate-Limiting-Nullifier/circom-rln", "commitHash": "17f0fed7d8d19e8b127fd0b3e5295a4831193a0d", - "paramConfiguration": [19, 16] + "paramsConfiguration": [19, 16] }, "verification": { "cfOrVm": "CF" }, "artifacts": { - "bucket": "p0tion-test-definitely-setup", - "region": "us-east-1", - "r1csStoragePath": "rln19.r1cs", - "wasmStoragePath": "rln19.wasm" + "r1csStoragePath": "https://p0tion-test-definitely-setup.s3.amazonaws.com/rln19.r1cs", + "wasmStoragePath": "https://p0tion-test-definitely-setup.s3.amazonaws.com/rln19.wasm" }, "name": "RLN-19", "fixedTimeWindow": 3, @@ -135,16 +125,14 @@ "template": { "source": "https://github.com/Rate-Limiting-Nullifier/circom-rln", "commitHash": "17f0fed7d8d19e8b127fd0b3e5295a4831193a0d", - "paramConfiguration": [20, 16] + "paramsConfiguration": [20, 16] }, "verification": { "cfOrVm": "CF" }, "artifacts": { - "bucket": "p0tion-test-definitely-setup", - "region": "us-east-1", - "r1csStoragePath": "rln20.r1cs", - "wasmStoragePath": "rln20.wasm" + "r1csStoragePath": "https://p0tion-test-definitely-setup.s3.amazonaws.com/rln20.r1cs", + "wasmStoragePath": "https://p0tion-test-definitely-setup.s3.amazonaws.com/rln20.wasm" }, "name": "RLN-20", "fixedTimeWindow": 3, @@ -159,16 +147,14 @@ "template": { "source": "https://github.com/Rate-Limiting-Nullifier/circom-rln", "commitHash": "17f0fed7d8d19e8b127fd0b3e5295a4831193a0d", - "paramConfiguration": [21, 16] + "paramsConfiguration": [21, 16] }, "verification": { "cfOrVm": "CF" }, "artifacts": { - "bucket": "p0tion-test-definitely-setup", - "region": "us-east-1", - "r1csStoragePath": "rln21.r1cs", - "wasmStoragePath": "rln21.wasm" + "r1csStoragePath": "https://p0tion-test-definitely-setup.s3.amazonaws.com/rln21.r1cs", + "wasmStoragePath": "https://p0tion-test-definitely-setup.s3.amazonaws.com/rln21.wasm" }, "name": "RLN-21", "fixedTimeWindow": 3, @@ -183,16 +169,14 @@ "template": { "source": "https://github.com/Rate-Limiting-Nullifier/circom-rln", "commitHash": "17f0fed7d8d19e8b127fd0b3e5295a4831193a0d", - "paramConfiguration": [22, 16] + "paramsConfiguration": [22, 16] }, "verification": { "cfOrVm": "CF" }, "artifacts": { - "bucket": "p0tion-test-definitely-setup", - "region": "us-east-1", - "r1csStoragePath": "rln22.r1cs", - "wasmStoragePath": "rln22.wasm" + "r1csStoragePath": "https://p0tion-test-definitely-setup.s3.amazonaws.com/rln22.r1cs", + "wasmStoragePath": "https://p0tion-test-definitely-setup.s3.amazonaws.com/rln22.wasm" }, "name": "RLN-22", "fixedTimeWindow": 3, @@ -207,16 +191,14 @@ "template": { "source": "https://github.com/Rate-Limiting-Nullifier/circom-rln", "commitHash": "17f0fed7d8d19e8b127fd0b3e5295a4831193a0d", - "paramConfiguration": [23, 16] + "paramsConfiguration": [23, 16] }, "verification": { "cfOrVm": "CF" }, "artifacts": { - "bucket": "p0tion-test-definitely-setup", - "region": "us-east-1", - "r1csStoragePath": "rln23.r1cs", - "wasmStoragePath": "rln23.wasm" + "r1csStoragePath": "https://p0tion-test-definitely-setup.s3.amazonaws.com/rln23.r1cs", + "wasmStoragePath": "https://p0tion-test-definitely-setup.s3.amazonaws.com/rln23.wasm" }, "name": "RLN-23", "fixedTimeWindow": 3, @@ -231,16 +213,14 @@ "template": { "source": "https://github.com/Rate-Limiting-Nullifier/circom-rln", "commitHash": "17f0fed7d8d19e8b127fd0b3e5295a4831193a0d", - "paramConfiguration": [24, 16] + "paramsConfiguration": [24, 16] }, "verification": { "cfOrVm": "CF" }, "artifacts": { - "bucket": "p0tion-test-definitely-setup", - "region": "us-east-1", - "r1csStoragePath": "rln24.r1cs", - "wasmStoragePath": "rln24.wasm" + "r1csStoragePath": "https://p0tion-test-definitely-setup.s3.amazonaws.com/rln24.r1cs", + "wasmStoragePath": "https://p0tion-test-definitely-setup.s3.amazonaws.com/rln24.wasm" }, "name": "RLN-24", "fixedTimeWindow": 3, @@ -255,16 +235,14 @@ "template": { "source": "https://github.com/Rate-Limiting-Nullifier/circom-rln", "commitHash": "17f0fed7d8d19e8b127fd0b3e5295a4831193a0d", - "paramConfiguration": [25, 16] + "paramsConfiguration": [25, 16] }, "verification": { "cfOrVm": "CF" }, "artifacts": { - "bucket": "p0tion-test-definitely-setup", - "region": "us-east-1", - "r1csStoragePath": "rln25.r1cs", - "wasmStoragePath": "rln25.wasm" + "r1csStoragePath": "https://p0tion-test-definitely-setup.s3.amazonaws.com/rln25.r1cs", + "wasmStoragePath": "https://p0tion-test-definitely-setup.s3.amazonaws.com/rln25.wasm" }, "name": "RLN-25", "fixedTimeWindow": 3, @@ -278,16 +256,15 @@ }, "template": { "source": "https://github.com/Rate-Limiting-Nullifier/circom-rln", - "commitHash": "17f0fed7d8d19e8b127fd0b3e5295a4831193a0d" + "commitHash": "17f0fed7d8d19e8b127fd0b3e5295a4831193a0d", + "paramsConfiguration": [26, 16] }, "verification": { "cfOrVm": "CF" }, "artifacts": { - "bucket": "p0tion-test-definitely-setup", - "region": "us-east-1", - "r1csStoragePath": "rln26.r1cs", - "wasmStoragePath": "rln26.wasm" + "r1csStoragePath": "https://p0tion-test-definitely-setup.s3.amazonaws.com/rln26.r1cs", + "wasmStoragePath": "https://p0tion-test-definitely-setup.s3.amazonaws.com/rln26.wasm" }, "name": "RLN-26", "dynamicThreshold": 0, @@ -302,16 +279,15 @@ }, "template": { "source": "https://github.com/Rate-Limiting-Nullifier/circom-rln", - "commitHash": "17f0fed7d8d19e8b127fd0b3e5295a4831193a0d" + "commitHash": "17f0fed7d8d19e8b127fd0b3e5295a4831193a0d", + "paramsConfiguration": [27, 16] }, "verification": { "cfOrVm": "CF" }, "artifacts": { - "bucket": "p0tion-test-definitely-setup", - "region": "us-east-1", - "r1csStoragePath": "rln27.r1cs", - "wasmStoragePath": "rln27.wasm" + "r1csStoragePath": "https://p0tion-test-definitely-setup.s3.amazonaws.com/rln27.r1cs", + "wasmStoragePath": "https://p0tion-test-definitely-setup.s3.amazonaws.com/rln27.wasm" }, "name": "RLN-20", "dynamicThreshold": 0, @@ -326,16 +302,15 @@ }, "template": { "source": "https://github.com/Rate-Limiting-Nullifier/circom-rln", - "commitHash": "17f0fed7d8d19e8b127fd0b3e5295a4831193a0d" + "commitHash": "17f0fed7d8d19e8b127fd0b3e5295a4831193a0d", + "paramsConfiguration": [28, 16] }, "verification": { "cfOrVm": "CF" }, "artifacts": { - "bucket": "p0tion-test-definitely-setup", - "region": "us-east-1", - "r1csStoragePath": "rln28.r1cs", - "wasmStoragePath": "rln28.wasm" + "r1csStoragePath": "https://p0tion-test-definitely-setup.s3.amazonaws.com/rln28.r1cs", + "wasmStoragePath": "https://p0tion-test-definitely-setup.s3.amazonaws.com/rln28.wasm" }, "name": "RLN-28", "dynamicThreshold": 0, @@ -350,16 +325,15 @@ }, "template": { "source": "https://github.com/Rate-Limiting-Nullifier/circom-rln", - "commitHash": "17f0fed7d8d19e8b127fd0b3e5295a4831193a0d" + "commitHash": "17f0fed7d8d19e8b127fd0b3e5295a4831193a0d", + "paramsConfiguration": [29, 16] }, "verification": { "cfOrVm": "CF" }, "artifacts": { - "bucket": "p0tion-test-definitely-setup", - "region": "us-east-1", - "r1csStoragePath": "rln29.r1cs", - "wasmStoragePath": "rln29.wasm" + "r1csStoragePath": "https://p0tion-test-definitely-setup.s3.amazonaws.com/rln29.r1cs", + "wasmStoragePath": "https://p0tion-test-definitely-setup.s3.amazonaws.com/rln29.wasm" }, "name": "RLN-20", "dynamicThreshold": 0, @@ -374,16 +348,15 @@ }, "template": { "source": "https://github.com/Rate-Limiting-Nullifier/circom-rln", - "commitHash": "17f0fed7d8d19e8b127fd0b3e5295a4831193a0d" + "commitHash": "17f0fed7d8d19e8b127fd0b3e5295a4831193a0d", + "paramsConfiguration": [30, 16] }, "verification": { "cfOrVm": "CF" }, "artifacts": { - "bucket": "p0tion-test-definitely-setup", - "region": "us-east-1", - "r1csStoragePath": "rln30.r1cs", - "wasmStoragePath": "rln30.wasm" + "r1csStoragePath": "https://p0tion-test-definitely-setup.s3.amazonaws.com/rln30.r1cs", + "wasmStoragePath": "https://p0tion-test-definitely-setup.s3.amazonaws.com/rln30.wasm" }, "name": "RLN-30", "dynamicThreshold": 0, @@ -398,16 +371,15 @@ }, "template": { "source": "https://github.com/Rate-Limiting-Nullifier/circom-rln", - "commitHash": "17f0fed7d8d19e8b127fd0b3e5295a4831193a0d" + "commitHash": "17f0fed7d8d19e8b127fd0b3e5295a4831193a0d", + "paramsConfiguration": [31, 16] }, "verification": { "cfOrVm": "CF" }, "artifacts": { - "bucket": "p0tion-test-definitely-setup", - "region": "us-east-1", - "r1csStoragePath": "rln31.r1cs", - "wasmStoragePath": "rln31.wasm" + "r1csStoragePath": "https://p0tion-test-definitely-setup.s3.amazonaws.com/rln31.r1cs", + "wasmStoragePath": "https://p0tion-test-definitely-setup.s3.amazonaws.com/rln31.wasm" }, "name": "RLN-31", "dynamicThreshold": 0, @@ -422,16 +394,15 @@ }, "template": { "source": "https://github.com/Rate-Limiting-Nullifier/circom-rln", - "commitHash": "17f0fed7d8d19e8b127fd0b3e5295a4831193a0d" + "commitHash": "17f0fed7d8d19e8b127fd0b3e5295a4831193a0d", + "paramsConfiguration": [32, 16] }, "verification": { "cfOrVm": "CF" }, "artifacts": { - "bucket": "p0tion-test-definitely-setup", - "region": "us-east-1", - "r1csStoragePath": "rln32.r1cs", - "wasmStoragePath": "rln32.wasm" + "r1csStoragePath": "https://p0tion-test-definitely-setup.s3.amazonaws.com/rln32.r1cs", + "wasmStoragePath": "https://p0tion-test-definitely-setup.s3.amazonaws.com/rln32.wasm" }, "name": "RLN-32", "dynamicThreshold": 0, diff --git a/ceremonies/setup_ceremony_config.sh b/ceremonies/setup_ceremony_config.sh index 62d692f..597eb7d 100644 --- a/ceremonies/setup_ceremony_config.sh +++ b/ceremonies/setup_ceremony_config.sh @@ -263,7 +263,7 @@ do echo -e "\nEnter circuit description:" read circuit_description - echo -e "\nEnter paramConfiguration values as a comma-separated list (e.g. 6,8,3,2):" + echo -e "\nEnter paramsConfiguration values as a comma-separated list (e.g. 6,8,3,2):" read param_str params=$(jq -nR '[(input | split(",")[] | tonumber)]' <<< "$param_str") @@ -286,9 +286,9 @@ do '{ "description": $circuit_description, "compiler": {"version": $compiler_version, "commitHash": $compiler_commit_hash}, - "template": {"source": $template_source, "commitHash": $template_commit_hash, "paramConfiguration": $params}, + "template": {"source": $template_source, "commitHash": $template_commit_hash, "paramsConfiguration": $params}, "verification": ($verification_method | if . == "CF" then {"cfOrVm": "CF"} else {"cfOrVm": "VM", "vmConfigurationType": $vm_configuration_type, "vmDiskSize": $vm_disk_size|tonumber, "vmDiskType": $vm_disk_type} end), - "artifacts": {"bucket": $bucket, "region": $region, "r1csStoragePath": ($base_name + ".r1cs"), "wasmStoragePath": ($base_name + ".wasm")}, + "artifacts": {"r1csStoragePath": ("https://" + $bucket + ".s3." + $region + ".amazonaws.com/" + $base_name + ".r1cs"), "wasmStoragePath": ("https://" + $bucket + ".s3." + $region + ".amazonaws.com/" + $base_name + ".wasm")}, "name": $base_name, "sequencePosition": $index|tonumber }')