Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release v0.6.0 #263

Open
6 of 12 tasks
rymnc opened this issue Jul 29, 2024 · 2 comments
Open
6 of 12 tasks

Release v0.6.0 #263

rymnc opened this issue Jul 29, 2024 · 2 comments

Comments

@rymnc
Copy link
Contributor

rymnc commented Jul 29, 2024

With this issue we scope out from #91 the features and issues we want to address in the next zerokit release v0.6.0.

Reported items may change according to any eventual blocker found or re-prioritization of items.

Usage of arkzkey

  • compare circuit loading performance of a compressed arkzkey vs uncompressed arkzkey and report on the benchmark result, as well as the size of the file
  • instead of loading the zkey from file, investigate if the zkey can be defined in code, and if so, create a utility crate that accepts 2 inputs, one being the zkey from file, and the zkey defined in code, and compares the two, to return either a true or false. This will help in transparency as the result from the trusted setup is being defined differently.
  • attempt a PoC with https://github.com/philsippl/circom-witness-rs instead of using the zkey. Benchmark and compare performance with the existing setup.

rln

  • create a new feature stateless in the rln crate, which has the following requirements
    • no merkle tree used
    • exposes only 2 APIs, via FFI and the public module, one to generate proofs (already exists), and one to verify them. Utility functions may be exposed, like the poseidon hasher.
    • Integrate stateless into rln-wasm, and subsequently, modify the rln-wasm api's to only include utilites, and to generate/verify proofs

rln-wasm

  • audit the current implementation to find performance pitfalls.
  • Bump dependencies of wasmer and benchmark against current implementation
  • TBD: results of the rln-wasm audit
@seemenkina
Copy link
Contributor

Bottom line: using uncompressed arkzkey allows you to significantly reduce the program runtime when reading from a file.
But there is a difficulty with the fact that the arkzkey library at this stage supports working only with compressed data, so I added an additional function to allow reading uncompressed keys

See PR #269

image image

@seemenkina
Copy link
Contributor

Tasks about replacing zkey with circom, and auditing rln-wasm have been pushed to minor release v0.6.1: #271

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants