This PR adds a golang binding for poseidon.
Also it adds a test to verify that it runs for every curve and, for bls12-381 specifically, it checks correctness against a precomputed value.
The reason I didn't test every curve (or the different arities/number of states) is I couldn't find a library that supports everything we do to compare against.
I'll add tests for bn254 and bls12-371 later.
Describe the changes
This PR adds a golang binding for poseidon. Also it adds a test to verify that it runs for every curve and, for bls12-381 specifically, it checks correctness against a precomputed value. The reason I didn't test every curve (or the different arities/number of states) is I couldn't find a library that supports everything we do to compare against. I'll add tests for bn254 and bls12-371 later.
Linked Issues
Resolves #