You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Every Git SHA in the rust-fil-proofs repository is associated with one set of publishable Groth parameters. It is sometimes the case that two Git SHAs use the same Groth parameters. Sometimes the source code changes such that new parameters are required. The new version of the source code has a Git SHA, and that Git SHA is associated with a set of Groth parameters (and verifying keys) which may not perfectly overlap with the old version of the source code (i.e. new and old versions may share the same PoSt Groth parameters and verifying keys - but PoRep Groth parameters and keys may have changed).
The parampublish tool, built from a Git SHA X, currently asks the user to publish each file found in the $PARAMETER_CACHE_DIR which has a .params or .vk extension. It may be the case that a file in $PARAMETER_CACHE_DIR is no longer used by the rust-fil-proofs source at Git SHA X (because it was published in the past). If that is the case, parampublish should not prompt the user to publish that file. parampublish built from rust-fil-proofs at X should also remove files from the parameters.json manifest which are no longer used by rust-fil-proofs at X.
Acceptance criteria
Start with an empty $PARAMETER_CACHE_DIR directory. Run paramcache built from some Git SHA to populate the directory. Check out a more recent version of rust-fil-proofs and rebuild paramcache. This new version of rust-fil-proofs should use a different set of Groth parameters and verifying keys than the earlier version. Run the new version of parampublish with the --all flag and verify that:
$PARAMETER_CACHE_DIR contains only the Groth parameters and verifying keys used by the new version of rust-fil-proofs
parameters.json includes only the Groth parameters and verifying keys used by the new version of rust-fil-proofs
Regardless of which flags are passed to paramcache, do not publish any parameters which are not the parameters which the corresponding paramcache would generate.
The text was updated successfully, but these errors were encountered:
Description
Every Git SHA in the
rust-fil-proofs
repository is associated with one set of publishable Groth parameters. It is sometimes the case that two Git SHAs use the same Groth parameters. Sometimes the source code changes such that new parameters are required. The new version of the source code has a Git SHA, and that Git SHA is associated with a set of Groth parameters (and verifying keys) which may not perfectly overlap with the old version of the source code (i.e. new and old versions may share the same PoSt Groth parameters and verifying keys - but PoRep Groth parameters and keys may have changed).The
parampublish
tool, built from a Git SHA X, currently asks the user to publish each file found in the$PARAMETER_CACHE_DIR
which has a.params
or.vk
extension. It may be the case that a file in$PARAMETER_CACHE_DIR
is no longer used by therust-fil-proofs
source at Git SHA X (because it was published in the past). If that is the case,parampublish
should not prompt the user to publish that file.parampublish
built fromrust-fil-proofs
at X should also remove files from theparameters.json
manifest which are no longer used byrust-fil-proofs
at X.Acceptance criteria
Start with an empty
$PARAMETER_CACHE_DIR
directory. Runparamcache
built from some Git SHA to populate the directory. Check out a more recent version ofrust-fil-proofs
and rebuildparamcache
. This new version ofrust-fil-proofs
should use a different set of Groth parameters and verifying keys than the earlier version. Run the new version ofparampublish
with the--all
flag and verify that:$PARAMETER_CACHE_DIR
contains only the Groth parameters and verifying keys used by the new version ofrust-fil-proofs
parameters.json
includes only the Groth parameters and verifying keys used by the new version ofrust-fil-proofs
Regardless of which flags are passed to
paramcache
, do not publish any parameters which are not the parameters which the correspondingparamcache
would generate.The text was updated successfully, but these errors were encountered: