-
Notifications
You must be signed in to change notification settings - Fork 164
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
PoseidonChip
compatibility
#95
Comments
It is spec compatible. Poseidon has different domain separations and we use a specific one in PoseidonChip for variable length transcripts. See discussion here: https://t.me/halo2lib/129 |
1 similar comment
It is spec compatible. Poseidon has different domain separations and we use a specific one in PoseidonChip for variable length transcripts. See discussion here: https://t.me/halo2lib/129 |
Thanks @jonathanpwang. -> which IIUC is not found in Is this what you mean by domain separation? Or rather that the Chip doesn't append I wonder what's the best way to go about circuit & non-circuit compatibility, maybe you've some suggestions? My use case is that I want to produce a non-interactive transcript for some protocol, and encode the protocol verifier as a halo2 circuit - which of course requires the sponges to agree. |
I'm looking into this; will get back to you. In the meantime, you can try https://github.com/axiom-crypto/snark-verifier/blob/main/snark-verifier/src/util/hash/poseidon.rs |
Do you know whether the
PoseidonChip
is meant to be spec compatible with the native one? Perhaps I'm doing something wrong, but the following fails for me (Scroll's impl claims to be "in line with the reference and the test vectors"):I know that you guys got inspiration for the
PoseidonChip
from the scroll sponge, so apologies if this is completely the wrong place for this issue, but at least I can run meaningful tests between the native & in-circuit Poseidon sponge using your repo 🙏🏼 (as the Scroll halo2-snark-aggregator is a little out of date).Also @zhenfeizhang @noel2004
The text was updated successfully, but these errors were encountered: