-
Notifications
You must be signed in to change notification settings - Fork 10
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
r1cs: PoseidonSpongeVar
permutation
#30
Milestone
Comments
To prioritize the above here are the circuit costs of various gadgets as of commit 0db4a2be63ff444aa5e481cf82e6eb22e6653500 (in penumbra): The numbers below include the constraint cost of witnessing the required instance variables:
|
This is no longer planned for implementation due to #40 |
github-project-automation
bot
moved this from Future
to Testnet 52: Amalthe
in Testnets
Apr 27, 2023
Reopening as #40 was backburnered |
30 tasks
This was referenced Jun 2, 2023
Merged
redshiftzero
changed the title
r1cs: optimized
r1cs: Jun 8, 2023
PoseidonSpongeVar
permutationPoseidonSpongeVar
permutation
github-project-automation
bot
moved this from Todo
to Done
in Reify complete system in ZK
Jun 8, 2023
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Followup from #29: We are using
PoseidonSpongeVar
fromark-sponge
for in-circuit hashing (ref penumbra-zone/penumbra#714).~However, the implementation of the permutation via
PoseidonSpongeVar::permute
does not use the optimizations we added support for in our parameter generation code in #17 and in our poseidon-permutation crate in #20. For some concrete numbers, we saw a1.9x reduction in the number of multiplications for our 4:1 hash (see PR text #21 for where this number comes from).Edit: These optimizations only work out of circuit, as (ref section 6.2.1 in the paper), the R1CS cost does not change due to the (constant multiplication) linear layers.
The text was updated successfully, but these errors were encountered: