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

Secure the Poseidon hash function with test vectors #3132

Open
zac-williamson opened this issue Oct 30, 2023 · 0 comments
Open

Secure the Poseidon hash function with test vectors #3132

zac-williamson opened this issue Oct 30, 2023 · 0 comments
Labels
C-barretenberg Component: barretenberg cryptography library crypto cryptography T-testing Type: Testing. More tests need to be added.

Comments

@zac-williamson
Copy link
Contributor

PR #3118 implements the Poseidon2 hash function, but currently lacks 3rd party test vectors to cross-reference the correctness of the hash function.

Existing poseidon2 implementations are parametrised by the following parameters:

  • sponge rate+capacity (t from the paper)
  • prime field type
  • round constants
  • matrix diagonal constants

I have not been able to find another implementation that uses the same prime field and t parameter. Additionally, we need to use test vectors where the round/matrix constants aren't hardcoded magic numbers (i.e. derivation method is documented so we can reproduce).

@github-project-automation github-project-automation bot moved this to Todo in A3 Oct 30, 2023
@zac-williamson zac-williamson added C-barretenberg Component: barretenberg cryptography library crypto cryptography labels Oct 30, 2023
@iAmMichaelConnor iAmMichaelConnor added the T-testing Type: Testing. More tests need to be added. label Oct 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-barretenberg Component: barretenberg cryptography library crypto cryptography T-testing Type: Testing. More tests need to be added.
Projects
Status: Todo
Development

No branches or pull requests

2 participants