Commit Graph

20 Commits

Author SHA1 Message Date
Jack Grigg
999dcbfcab Migrate to blake2b_simd and blake2s_simd crates
The primary reason for migrating is that these crates provide APIs for
setting the personalisation string. This enables us to depend solely on
published crates, and thus publish our own crates.

The SIMD implementations are ported from libsodium.

Closes #67.
2019-07-10 13:12:14 -04:00
Jack Grigg
f25a8a557e Convert zip32 crate into a module of zcash_primitives 2019-06-27 16:14:24 +01:00
Jack Grigg
060977fe54 Return edwards::Point from sapling_ka_agree
This matches how sapling_ka_agree and kdf_sapling are defined in the
protocol spec. kdf_sapling also now takes ownership of dhsecret to
discourage use of the sapling_ka_agree output elsewhere.
2019-06-06 13:38:33 +01:00
Jack Grigg
2b1583d75f Deduplicate Sapling key agreement logic 2019-04-05 21:05:05 +01:00
Jack Grigg
9ae5a9d624 Make loading of Sprout key optional in zcash_proofs API 2019-02-26 13:44:28 -07:00
Jack Grigg
2d43e3be7c Move parameter-loading into zcash_proofs 2019-02-26 13:44:28 -07:00
Jack Grigg
09a20aacfe Make zcash_primitives::JUBJUB the canonical instantiation of JubjubBls12 2019-02-26 13:44:28 -07:00
Jack Grigg
6b43b2d0d6 Refactor Sapling spendAuthSig creation into zcash_primitives::sapling 2019-02-26 13:44:28 -07:00
Jack Grigg
482bef87f0 Add ff and group crates to Cargo workspace 2019-01-06 09:50:07 +00:00
Jack Grigg
07955092f3 Update librustzcash crate to use ff crate 2019-01-06 09:36:32 +00:00
Jack Grigg
1a1c77536d cargo fmt 1.31.1 2019-01-03 21:52:06 +00:00
Jack Grigg
e378229bdd Move Sapling proving and binding signature into zcash_proofs crate 2018-12-01 00:10:51 +00:00
Jack Grigg
922ffe6002 Refactor Sapling proving and binding signature 2018-12-01 00:06:50 +00:00
Jack Grigg
e1841806c5 Move Sapling verification checks into zcash_proofs crate 2018-11-30 23:53:10 +00:00
Jack Grigg
eb2db2e667 Refactor Sapling verification checks 2018-11-30 23:50:50 +00:00
Jack Grigg
bbec1b841d Use slices of native strings to pass parameter paths into Rust
On Windows, the slices are [u16] representing UTF-16. On all other
platforms, the slices are [u8] in the native filesystem encoding.

Closes #44.
2018-10-27 16:27:49 +13:00
Jack Grigg
041671f642 Merge branch 'zcash-2.0.1' 2018-10-11 20:57:50 +01:00
Jack Grigg
a9059c9372 Update workspace after pulling in external crates 2018-08-28 23:06:15 +01:00
Jack Grigg
0ec85d362d Set up a Cargo workspace 2018-08-23 21:10:04 +01:00
Jack Grigg
d7257ce010 Move librustzcash crate into subdir 2018-08-23 21:04:02 +01:00