Commit Graph

11 Commits

Author SHA1 Message Date
Tomas Krnak ed11f440ce
Add `no-std` support (#11)
* Add no_std support

* Update CHANGELOG

* Remove unused alloc feature flag

* Remove a forgotten comment

Co-authored-by: str4d <thestr4d@gmail.com>

* Make zeroize dependency optional

* Add alloc feature flag

* Clean the code by outer attributes

* use 2021 edition

Co-authored-by: str4d <thestr4d@gmail.com>
Co-authored-by: Conrado Gouvea <conradoplg@gmail.com>
2022-05-06 11:57:45 -03:00
Jack Grigg 878dd1351b Introduce SpendAuth: SigType and Binding: SigType traits
The prior `SpendAuth` and `Binding` enums have been renamed to
`sapling::{SpendAuth, Binding}`. These might subsequently be removed
from the crate entirely (moving into a wrapping `redjubjub` crate).

The code assumes that scalar and point representations are [u8; 32],
which will be the case for all curves we instantiate RedDSA with for
Zcash.
2021-11-18 21:15:03 +00:00
Jack Grigg 7e80588550 Rename crate to reddsa 2021-11-18 21:14:08 +00:00
Deirdre Connolly ad3d7fcd49 Split out parsing & validation of test VerificationKey from checking of signature
Also use fully secure ChaChaRng with a full seed, not just a u64.

Now that we always generate an extra proper VerificationKey for each
Tweak::ChangePubkey case, this /should/ never fail: it also helps split out the
actual verification of the signature from the parsing and validation of the key
itself.
2021-06-01 06:45:52 -04:00
Deirdre Connolly f27b9c3c77
Change terminology to signing, verification keys (#35)
Matches ed25519-zebra.

Resolves #33
2020-06-25 11:56:29 -07:00
Henry de Valence c20139bbf7 Rename to just `redjubjub`. 2019-12-09 13:54:10 -08:00
Henry de Valence d8ad15059d Try to prevent ChangePubkey tweaks from becoming a no-op.
Since we expect the signature to fail if ChangePubkey is applied, we need to
make sure it actually changes the signature test case.
2019-12-09 12:15:11 -08:00
Henry de Valence ead4727ded Implement randomization. 2019-12-04 17:00:55 -08:00
Henry de Valence e3e92af63b Add more signature tweaks to proptest. 2019-12-04 16:35:25 -08:00
Henry de Valence 8aeb2f14f8 Add test vectors from librustzcash.
The `SpendAuth` test vectors were generated using
`FixedGenerators::SpendingKeyGenerator`, and the `Binding` test vectors
were generated using `FixedGenerators::ValueCommitmentRandomness`.
2019-12-04 16:14:44 -08:00
Henry de Valence 7b979ddd65 Add property tests for signatures. 2019-12-04 16:14:44 -08:00