Commit Graph

110 Commits

Author SHA1 Message Date
Jack Grigg 15fed12e95 cargo update
The `blake2*_simd` updates are ignored because they bump MSRV.
2023-09-11 22:12:52 +00:00
Jack Grigg fad1b91377 Add `Cargo.lock` to repository
This is currently "whatever lockfile happened to last work for str4d",
but going forward will be the lockfile we use for testing our MSRV. See
https://blog.rust-lang.org/2023/08/29/committing-lockfiles for rationale
on this change.
2023-09-11 22:12:52 +00:00
Jack Grigg 3cc32aacbc Remove Cargo.lock
Now that the librustzcash crate has been removed from the repository and
workspace, there are no crates that generate binary artifacts, and cargo
ignores Cargo.lock when publishing library crates.
2020-03-25 17:19:27 +13:00
Jack Grigg 232fb4b7a3 Procedural macro for fixed-exponent variable-base modular exponentiation
Uses the addchain crate to obtain an addition chain for the exponent,
and then generates the corresponding constant-time square-and-multiply
algorithm.
2020-03-14 10:54:22 +13:00
Jack Grigg 2df2a2b2f2 Merge branch 'develop' 2020-03-14 10:36:58 +13:00
Sean Bowe 100878cd14
Version bump of all crates (except librustzcash) 2020-03-12 15:59:19 -06:00
Sean Bowe 5e1a2f9d3f
Rename zcash_mmr to zcash_history.
This crate will contain all chain history logic.
2020-03-03 18:14:40 -07:00
Sean Bowe 9379eec1b8
Bring zcash_mmr into workspace. 2020-03-03 18:04:18 -07:00
Sean Bowe be0ee9eb82
Changes to Cargo.lock to reflect upstream crate changes. 2020-03-03 17:49:24 -07:00
Jack Grigg 6c2c2b58de
Migrate pairing benchmarks to criterion 2019-12-19 16:46:16 -06:00
Jack Grigg 00499b3441
Migrate zcash_primitives benchmarks to criterion 2019-12-19 16:11:11 -06:00
Jack Grigg 7ea1da5d6f
Migrate jubjub benchmarks to criterion 2019-12-19 15:55:01 -06:00
Jack Grigg f44556d7bf
Upgrade to criterion 0.3 2019-12-19 15:08:45 -06:00
Jack Grigg 662be3551f
impl ConditionallySelectable for Field 2019-12-12 23:15:48 +00:00
Sean Bowe a4f7c4eef3
Include jubjub and bls12_381 crates in the workspace. 2019-12-12 11:40:48 -07:00
Nikolay Volf 9ea0427678 MMR trees API (#118)
The main design goals of this mmr implementation were

1. Avoid database callbacks. As it is implemented, calling side must just smartly pre-load MMR nodes from the database (about log2(tree length) for append, twice as much for deletion).

2. Reuse as much code/logic between rust and c++ clients.

3. Close to zero memory consumption.
2019-12-04 21:24:26 +00:00
str4d 67d700feab
Merge pull request #107 from str4d/transaction-builder-transparent-inputs
Add P2PKH transparent input support to transaction::Builder
2019-11-13 22:15:55 +00:00
Jack Grigg d1bc61800c
Move Sprout proof logic into zcash_proofs 2019-11-06 08:58:42 +00:00
Jack Grigg bc35a62e10
Remove rand_os dependency 2019-10-31 18:57:52 +00:00
Jack Grigg 3425eabda2
transaction::Builder::add_transparent_input() 2019-10-15 17:42:46 +13:00
Jack Grigg 1e2bc7f65c
Test nullifiers in constant time
Checking for spent notes in a block is still not completely constant
time, due to filtering out negative results of the constant-time
comparison.

Part of #84.
2019-10-09 14:12:27 +13:00
Jack Grigg 591b1fc28f
Parse compact blocks to find wallet transactions 2019-10-09 14:11:12 +13:00
Jack Grigg af7e263bcc
Build protobufs for compact formats 2019-10-09 14:09:41 +13:00
Jack Grigg 98731c8374
librustzcash 0.2.0 2019-10-08 17:43:33 +13:00
Jack Grigg b0ba7fe4d2
zcash_client_backend 0.1.0 2019-10-08 17:43:33 +13:00
Jack Grigg d6bc2fe0af
zcash_proofs 0.1.0 2019-10-08 17:43:33 +13:00
Jack Grigg 8b08528bb0
zcash_primitives 0.1.0 2019-10-08 17:43:33 +13:00
Jack Grigg 25558893ab
bellman 0.2.0 2019-10-08 17:43:33 +13:00
Jack Grigg 68cada53cf
pairing 0.15.0 2019-10-08 17:43:33 +13:00
Jack Grigg aa37783c37
group 0.2.0 2019-10-08 17:43:33 +13:00
Jack Grigg 216f0f62a0
ff 0.5.0 2019-10-08 17:43:33 +13:00
NikVolf b42477a0bf update from rand_os to fix warnings 2019-09-28 10:48:43 +03:00
Jack Grigg b397a9c405
cargo update 2019-09-12 19:38:51 +01:00
Jack Grigg 0a3b0a9341
Upgrade to hex-literal 0.2 2019-09-12 19:38:51 +01:00
Jack Grigg 89dad572ef
Migrate bellman to crossbeam 0.7 2019-09-12 19:38:50 +01:00
Jack Grigg bef3e7e336
Migrate ff_derive to proc-macro2 1.0 2019-09-06 19:03:12 -04:00
Jack Grigg 7c1d4d9a5b
Log distinct error cases in Equihash verification 2019-08-24 00:40:30 +01:00
Jack Grigg 1b865ecfdf
Remove sapling-crypto 2019-08-14 10:48:06 +01:00
Jack Grigg 5fb9b86ba0
Move Jubjub, Pedersen hash and primitives into zcash_primitives 2019-08-14 10:47:22 +01:00
Jack Grigg b8af749b40
Move generic circuit gadgets into bellman 2019-08-14 10:45:58 +01:00
Jack Grigg 2ae5804a67
Move Sprout and Sapling circuits into zcash_proofs 2019-08-14 10:45:55 +01:00
Jack Grigg 7ea6d10480
Move redjubjub into zcash_primitives 2019-08-14 10:43:25 +01:00
Jack Grigg 3e35dd215c
cargo update 2019-08-14 01:14:02 +01:00
Jack Grigg 3211536324
Upgrade to crypto_api_chachapoly >= 0.2.1 2019-08-14 01:12:26 +01:00
Jack Grigg ec321382e1
Upgrade to bech32 0.7 2019-08-14 01:12:25 +01:00
Jack Grigg a12b8053b0
Upgrade to digest 0.8 2019-08-14 01:12:24 +01:00
Jack Grigg 2f1cae62b1
Upgrade to fpe 0.2 2019-08-14 01:12:23 +01:00
Jack Grigg 1862354ea6
Sapling transaction builder 2019-07-27 00:27:50 +01:00
Jack Grigg 01618038bf
TxProver trait to abstract over the circuit parameters
An implementation using local parameters is provided in the zcash_proofs
crate.
2019-07-26 23:56:00 +01:00
Jack Grigg 6f9083b5ab
Migrate to rand 0.7 2019-07-19 00:47:40 +02:00