penumbra-zone / poseidon377

An instantiation of the Poseidon hash for use with decaf377
https://protocol.penumbra.zone/main/crypto/poseidon.html
Other
28 stars 10 forks source link

Poseidon parameters crate. Be truly no-std compatible #37

Closed pmikolajczyk41 closed 1 year ago

pmikolajczyk41 commented 1 year ago

This PR improves over #34 in that sense, that now, poseidon can be actually used in any no-std environment. We achieve that by extracting parameter types to a separate, minimalistic, no-std-compatible crate (poseidon-parameters). Value generation is left in poseidon-paramgen, which by its nature is not no-std-friendly, but obviously this is not a problem (parameters can be easily generated in the build/offline phase, which usually is std anyway).

Previously we just tried compilation against the wasm32-unknown-unknown target, which is far not the same as no-std compilation. Now, we added cargo nono check to the pipelines as validation.

Co-authored-by: fbielejec fbielejec@gmail.com