privacy-scaling-explorations/sonobe

Poseidon configuration params for Ethereum use case

arnaucube opened this issue · 4 comments

Currently the tests that require usage of Poseidon are using the poseidon_test_config() params generator.
We need to have a specific method that offers the poseidon_config for the Ethereum use case (over Bn254's scalar field), to be used in non-test use cases that want to use the Ethereum Decider to verify the proofs. Ideally using the same config as in circomlib, noir-stdlib, etc.
And maybe the same for pasta curves (pallas and vesta) scalar fields.

tagging @ax0 as a knowledgeable person who could do this

Hi @arnaucube .

I am interested in this work. Could I get started on adding the configs from circomlib first for BN254.

Hi @ashu-t3 thanks for showing interest on this one. @ax0 started this one some time ago but got busy with other stuff, but just asked him and he almost have it locally and should be in a PR over the next days.

But if you're still interested, I'm thinking that a next step once this one is completed would be to do the same for the pasta curves fields, as they are the other main curves that seem that are going to be used apart from the bn254 for the Ethereum case. Would you like to do that one?

Thanks for getting back @arnaucube . Glad to do it for the pasta curves too. I am gonna take a look at the existing PR and then get started on it.

Do we want the pasta curves config to be consistent with o1js?