Commit Graph

146 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 17f60a0354
Implement PaymentAddress encoding and decoding 2019-06-27 16:21:00 +01:00
Jack Grigg 81b2b1b554
Wallet spending key derivation path 2019-06-27 16:19:33 +01:00
Jack Grigg f25a8a557e
Convert zip32 crate into a module of zcash_primitives 2019-06-27 16:14:24 +01:00
Jack Grigg fae919ec1c
Rename zcash_wallet to zcash_client_backend, set to 2018 edition 2019-06-27 16:02:12 +01:00
Jack Grigg 6dcb4040af
Switch to crypto_api_chachapoly crate
This crate exposes both the ChaCha20Poly1305 IETF construction, and the
underlying ChaCha20 IETF primitive, removing the need for depending on
our own fork of the previous chacha20-poly1305-aead crate.
2019-04-11 06:33:41 -07:00
George Tankersley 65bbe7daed
Implement Sapling note encryption 2019-04-05 21:05:05 +01:00
Jack Grigg 4289843852
Compute TxId for Transaction 2019-03-07 23:42:00 +00:00
Jack Grigg a1664c6bbc
impl Display for BlockHash and TxId 2019-03-07 23:41:46 +00: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 00983c48cd
Update zcash_proofs crate to use ff crate 2019-01-06 09:32:50 +00:00
Jack Grigg 538de482f3
Update zcash_primitives crate to use ff crate 2019-01-06 09:31:20 +00:00
Jack Grigg 2e408957db
Update zip32 crate to use ff crate 2019-01-06 09:22:10 +00:00
Jack Grigg 22ccd1bceb
Update sapling-crypto crate to use ff crate 2019-01-06 09:22:03 +00:00
Jack Grigg 76cd0d92bb
Merge commit '4272cfa5b0dceac471bef115955e1534be84a018' into ff-traits
git-subtree-dir: bellman
git-subtree-split: 4272cfa5b0
2019-01-06 09:21:44 +00:00
Jack Grigg 88746e76fa
Cargo.lock changes after pairing update 2019-01-06 09:20:00 +00:00
Jack Grigg 9f7e5fa3ce
Dependency updates after pairing update 2019-01-06 09:02:30 +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 e1841806c5
Move Sapling verification checks into zcash_proofs crate 2018-11-30 23:53:10 +00:00
str4d 8be50c9531
Merge pull request #39 from str4d/zcash-transaction-primitives
Transaction primitives
2018-11-30 23:38:38 +00:00
Jack Grigg 9b06205ed6
Reject unexpected binding sig during transaction write 2018-11-30 00:54:30 +00:00
Jack Grigg 2d8b1fe504
ZIP 143 2018-11-09 08:34:38 +13:00
Jack Grigg 041671f642
Merge branch 'zcash-2.0.1' 2018-10-11 20:57:50 +01:00
Jack Grigg e490b79907
Transaction serialization 2018-10-11 18:05:50 +01:00
Jack Grigg 91ff2c71cf
Helper for serializing CompactSize-prefixed vectors 2018-10-11 17:48:12 +01:00
Jack Grigg 77ee1d6a8f
ZIP 32 APIs 2018-08-30 00:05:49 +01:00
Jack Grigg 6e0364cd42
Update workspace after pulling in zip32 crate 2018-08-29 09:57:52 +01:00
Jack Grigg a9059c9372
Update workspace after pulling in external crates 2018-08-28 23:06:15 +01:00
Jack Grigg ad16ba6a35
Empty crates as a base for code refactoring 2018-08-28 22:24:14 +01:00
Sean Bowe bd9b8aabb9 Update sapling-crypto 2018-07-30 18:52:03 -06:00
Sean Bowe 0800976a57 Add implementation of Sapling proof API 2018-07-17 16:46:10 -06:00
str4d d19c9b5645
Implement Equihash validator
Follows Zcash implementation as closely as possible.
2018-05-24 16:30:56 +12:00
Sean Bowe f8f8954608 Update sapling-crypto 2018-05-18 12:47:35 -06:00
Sean Bowe d14b12aae4 Switch to little endian encoding for everything. 2018-05-17 16:06:31 -06:00
Sean Bowe fefa46b4c4
Implementation of Sprout proving and verifying 2018-05-10 14:29:02 -06:00
Sean Bowe d73044896e Update sapling-crypto dependency. 2018-05-07 17:52:44 -06:00
Sean Bowe 4f9953f18f Support loading zk-SNARK parameters 2018-04-17 14:16:14 -06:00
Sean Bowe 37f20fb90c Use lazy_static to initialize the Jubjub parameters, to avoid passing parameters around. 2018-04-12 18:38:25 -06:00
Sean Bowe f1d35708bc
Expose API for init/free of parameters and, to test, a merkle tree hash invocation. 2018-04-11 21:51:30 -06:00
Sean Bowe 5199fdfcb7
Use newer versions of libc and num_cpus 2018-04-10 13:57:33 -06:00
str4d 222e0b3515
Add sapling-crypto to dependencies 2018-04-09 18:28:42 -06:00
Sean Bowe d7085b90c8 Initial commit. 2017-03-17 11:07:23 -06:00