Commit Graph

1253 Commits

Author SHA1 Message Date
Sean Bowe 4f0f10a53c Add 'zcash_history/' from commit 'e2c131fdc308265adcab774e54d4d5804c23b368'
git-subtree-dir: zcash_history
git-subtree-mainline: be0ee9eb82
git-subtree-split: e2c131fdc3
2020-03-03 17:51:19 -07:00
Sean Bowe be0ee9eb82
Changes to Cargo.lock to reflect upstream crate changes. 2020-03-03 17:49:24 -07:00
Sean Bowe b52e4aac3a
Fix Field::random method declarations. 2020-03-03 17:47:29 -07:00
Sean Bowe c49aaceb5d
Merge commit 'f337eb1f5c67d9305b1fb4fb35507bb50817259b' into depends-updates-2 2020-03-03 17:46:59 -07:00
Sean Bowe f337eb1f5c Squashed 'bellman/' changes from 4272cfa..2279da4
2279da4 Merge pull request #38 from debris/docs
2e57190 Remove documentation entry from Cargo.toml
346d540 bellman 0.2.0
8d79665 Merge pull request #93 from defuse/qed-it-lrz
f50079f Crate docs
701cb2b Update READMEs
ccf1ee9 CI: Check intra-doc links
ddd390a Add READMEs to Cargo.toml files
54d3122 Add missing cs.is_satisfied() to bellman test
52bf23c Fix build warnings
581ad35 boolean: adds tests for alloc_conditionally
0403396 blake2s: adds test vectors from go-jubjub
9f24e47 Fix blake2s test data length assertion.
42d5b3b Add blake2s test vectors for varying sizes from go-jubjub
b2597de pedersen_hash: removes debug prints
c903fad pedersen hashes: example of size limit bug
bc697c1 bellman: Fix compile errors without multicore feature
a4e5df9 Upgrade to hex-literal 0.2
c063509 Migrate bellman to crossbeam 0.7
1775843 Take self directly in into_* functions
614d784 Rename into_ -> to_ where &self is used.
08664b1 Address various clippy warnings/errors in bellman
bb11ef2 cargo fmt
cff2e2f cargo fix --edition-idioms for bellman
dc2a280 Add edition = 2018
1a2bc19 cargo fmt
ad37878 cargo fix --edition for bellman
e73d1a2 cargo fmt bellman
dfb86fc Move generic circuit gadgets into bellman
9b3d766 Migrate to rand 0.7
055280f Migrate ff, group, pairing, and bellman to rand 0.6
533d586 Migrate bellman to rand 0.5
bfa9aaf Merge pull request #61 from rex4539/fix-typos
3dd8490 Place bellman multicore operations behind a (default) feature flag
955e679 Merge pull request #46 from str4d/ff-traits
d4ddaa9 Fix typos
12f93f2 Add ff and group crates to Cargo workspace
2e35a32 Update sapling-crypto crate to use ff crate
2019e63 Update workspace after pulling in external crates

git-subtree-dir: bellman
git-subtree-split: 2279da422c
2020-03-03 17:46:04 -07:00
Sean Bowe 805aa45f9e
Merge commit '05a9f3360f7fbd298f3e6f8f7e55e9426d04f2f0' into depends-updates-2 2020-03-03 17:45:49 -07:00
Sean Bowe 05a9f3360f Squashed 'pairing/' changes from 3d41ee5..3870f11
3870f11 Bump version and ff dependency
e8657fa Merge pull request #108 from kigawas/fix-rngcore-sized
7fddfc7 Update Cargo.toml
df0217c bump group version
cbc1917 bump version
98133d9 fix RngCore Sized
583c744 pairing 0.15.0
0de7279 Fix pairing benchmarks
dd2fbb3 Crate docs
97c45f2 Update READMEs
9aef129 CI: Check intra-doc links
f552b49 Add READMEs to Cargo.toml files
8c59b4a cargo fmt
33993f4 cargo fix --edition-idioms for pairing
36788f3 Add edition = 2018
df88a3f cargo fmt
d9a1288 cargo fix --edition for pairing
013fd03 cargo fmt pairing
5635612 Fix clippy linter errors in pairing crate
ba40e2f Use modern clippy linter syntax
fa4eaeb Migrate to rand 0.7
1d00588 Migrate ff, group, pairing, and bellman to rand 0.6
95a749b Migrate pairing to rand 0.5
01e7212 Add ff and group crates to Cargo workspace

git-subtree-dir: pairing
git-subtree-split: 3870f1172f
2020-03-03 17:44:53 -07:00
Sean Bowe 31d887c943
Merge commit 'd7f78db121ee6f720e97401ded0c9c597d1a4857' into depends-updates-2 2020-03-03 17:44:28 -07:00
Sean Bowe d7f78db121 Squashed 'ff/' changes from 661558e..ddff465
ddff465 Bump version and dependency on ff_derive
25d11d6 Bump version
95e2723 Bump version to 0.5.1
f76872a Add ?Sized to RngCore trait bounds (#14)
09a32b1 ff 0.5.0
32543ab Crate docs
22031dc Update READMEs
658fe6d CI: Check intra-doc links
35f5026 Add READMEs to Cargo.toml files
6804225 Migrate ff_derive to proc-macro2 1.0
b9a79ce cargo fmt
82574c2 cargo fix --edition-idioms for ff
3b0cf72 Add edition = 2018
8a2b51b Replace try! macro
40fc9ba cargo fix --edition for ff
22c67f3 cargo fmt
312141c Clarify masking of bits in Field::random impls
89a68e1 Migrate to rand 0.7
58415fb Migrate ff, group, pairing, and bellman to rand 0.6
8b6e6b1 Migrate ff to rand_core 0.3 (used by rand 0.5)

git-subtree-dir: ff
git-subtree-split: ddff4658dd
2020-03-03 17:43:16 -07:00
str4d d4bae99cb7
Merge pull request #204 from str4d/proving-api-ux-refactors
UX refactors for proving-related APIs
2020-02-16 18:56:46 +00:00
Jack Grigg 2d30c29d06 Pass &impl TxProver to Builder::build
This allows the caller to build multiple transactions with a single
proving backend.
2020-02-08 00:37:31 +00:00
Jack Grigg 76e0f658c1 Rename CommitmentTreeWitness -> MerklePath 2020-02-08 00:36:40 +00:00
Jack Grigg 3a3008caf9 Pass CommitmentTreeWitness directly into Builder::add_sapling_spend
This is more likely to be the data that the caller has available, and
is all we need now that a CommitmentTreeWitness can compute its root.
2020-02-07 17:31:38 +00:00
Jack Grigg 8a210ec271 CommitmentTreeWitness::root(leaf) 2020-02-07 17:21:59 +00:00
Jack Grigg 2064d1c801 Refactor zcash_primitives::merkle_tree::CommitmentTreeWitness
- The internal Option wrapper was an unnecessary leftover from when this
  code was directly inside the prover, where Some(x) represents an
  assigned variable.
- CommitmentTreeWitness::from_slice_with_depth is more idiomatic Rust.
2020-02-07 00:06:57 +00:00
str4d ee32f7facb
Merge pull request #198 from huitseeker/warts
Addressing some trivial Rust option/iterator lints
2020-02-04 18:18:09 +00:00
str4d 903c02b991
Merge pull request #202 from str4d/coverage-build-fix
CI: Use stable Rust release for code coverage
2020-02-03 19:05:34 +00:00
Jack Grigg 1f38523fff CI: Use stable Rust release for code coverage
Fixes an issue where cargo-tarpaulin failed to build the crate on
1.37.0, but the crate itself builds fine with that version.
2020-02-03 18:08:56 +00:00
François Garillot 865275e2a2
Correcting some trivial Rust option/iterator warts 2020-01-29 13:53:05 -08:00
str4d 702b5e5d8c
Merge pull request #193 from str4d/group-std-ops
Move Group operations to operator-backed traits
2020-01-28 17:41:50 +00:00
str4d 53ef825468
Merge pull request #197 from str4d/clippy-cleanups
Clippy cleanups
2020-01-16 13:08:32 -05:00
Jack Grigg 21efaccc9f librustzcash: Use "if let" syntax 2020-01-14 22:33:50 -05:00
Jack Grigg 620213a0f0 ff_derive: Fix a clippy issue in generated code
This shows up as a clippy warning in the pairing crate.
2020-01-14 22:00:50 -05:00
Jack Grigg 3c84625438 pairing: Allow clippy::cognitive_complexity in test_frob_coeffs 2020-01-14 22:00:17 -05:00
Jack Grigg 2f38316359 pairing: Fix various clippy issues 2020-01-14 22:00:17 -05:00
Jack Grigg 61f052a68f ff: Use readable literals 2020-01-14 22:00:17 -05:00
Jack Grigg 00a4e1388b ff: Make byteorder an optional dependency under the std feature flag
Building ff with the std feature flag was previously broken because it
required importing byteorder functionality behind the byteorder/std
feature flag. We don't use byteorder inside ff in no_std mode, so we can
just make it optional.
2020-01-14 22:00:16 -05:00
Jack Grigg 8887414c49 ff_derive: Fix various clippy issues 2020-01-14 21:59:45 -05:00
Jack Grigg 2bfc715828 bls12_381: Remove unnecessary clones
The structs in question all implement Copy.
2020-01-14 21:08:34 -05:00
Jack Grigg 911d248b86 bls12_381: Remove unnecessary unit return values 2020-01-14 21:06:10 -05:00
Jack Grigg f99ab768dc bls12_381: Remove unnecessary references 2020-01-14 21:03:39 -05:00
Jack Grigg 687fff5ecf bls12_381: Fix ambiguous operation clippy warnings 2020-01-14 20:59:25 -05:00
Jack Grigg e15fea2757 bls12_381: Silence clippy::eq_op in tests that trigger it
The tests are explicitly checking that the operator implementations work
correctly for equal LHS and RHS.
2020-01-14 20:53:44 -05:00
Jack Grigg 394b6f91a9 bls12_381: Use readable literals 2020-01-14 20:51:34 -05:00
Jack Grigg 6c6772e456 jubjub: Allow too-many-arguments in Fr::montgomery_reduce 2020-01-14 10:55:42 -05:00
Jack Grigg 7a8fe98b27 jubjub: Remove unnecessary references 2020-01-14 10:55:24 -05:00
Jack Grigg 4c9793d001 jubjub: Use readable literals 2020-01-14 10:55:00 -05:00
Jack Grigg 9c485cc97e Move from CurveProjective::add_assign_mixed to traits 2020-01-13 21:20:46 -05:00
Jack Grigg d822e34e63 Extract curve operations into default impl traits
This makes it possible to implement mixed addition using operator-backed
traits without running into type annotation problems.
2020-01-13 21:19:33 -05:00
Jack Grigg 1a8ec21c03 Move from Curve*::negate to Neg operator 2020-01-13 21:19:33 -05:00
Jack Grigg 8193324986 Move additive CurveProjective operators to traits 2020-01-13 21:19:33 -05:00
str4d 049847f1a8
Merge pull request #195 from str4d/criterion-benchmarks
Migrate all benchmarks to criterion
2019-12-19 18:09:57 -06:00
Jack Grigg 8f48ded2a1
Move benchmark bitrot linter out of nightly lints 2019-12-19 16:49:12 -06: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
str4d b5523f610e
Merge pull request #194 from str4d/ct-invert
Constant-time field inversion in ff_derive using pow_vartime
2019-12-19 14:33:41 -06:00
Jack Grigg 56999d0f73
Constant-time field inversion in ff_derive using Field::pow_vartime
This is around 2.5-3x slower than the non-constant-time inversion. We
can regain some of this speed later by dynamically generating addition
chains.
2019-12-19 12:25:39 -06:00
Jack Grigg 26ef9c9842
Pass modulus to prime_field_constants_and_sqrt by reference 2019-12-19 12:18:09 -06:00