Commit Graph

14 Commits

Author SHA1 Message Date
Jack Grigg
c597db59a6 ff: Rename PrimeField::into_repr -> PrimeField::to_repr 2020-05-02 18:55:13 +12:00
Jack Grigg
15e229509a ff: Move pow_vartime back into Field trait
The only places we don't use constant u64 limbs, we use PrimeField::char
instead (except in a single test where we use a field element).
2020-05-02 18:54:02 +12:00
Jack Grigg
b6457a905b ff: Move pow_vartime into a trait that is generic over the limb size
The trait is implemented by default for u8 and u64, allowing pow_vartime
to be used with both the byte encoding and limb representation of field
elements.
2020-03-28 00:27:59 +13:00
Jack Grigg
1c9f5742fa Improve Field::pow API and impl
Renamed to Field::pow_vartime to indicate it is still variable time with
respect to the exponent.
2019-12-14 12:27:48 +00:00
Jack Grigg
40749da9a7 Constant-time field inversion
WARNING: THIS IS NOT ACTUALLY CONSTANT TIME YET!

The jubjub and bls12_381 crates will replace our constant-time usages,
but we NEED to fix ff_derive because other users will expect it to
implement the Field trait correctly.
2019-12-13 19:46:04 +00:00
Jack Grigg
cded08b0c5 Make Field::square take &self and return Self 2019-12-12 23:09:28 +00:00
Jack Grigg
27c8f34601 Move Field operations to operator-backed traits
The ff_derive, pairing, zcash_primitives::jubjub, and bellman dummy_engine
changes are minimally implemented on top of the existing *_assign()
functions.
2019-12-12 21:19:46 +00:00
Jack Grigg
4ad3988e43 Crate docs 2019-09-24 14:23:59 +01:00
Jack Grigg
89dad572ef Migrate bellman to crossbeam 0.7 2019-09-12 19:38:50 +01:00
Jack Grigg
d65fe2cda9 Address various clippy warnings/errors in bellman 2019-08-24 00:38:32 +01:00
Eirik Ogilvie-Wigley
9a4f6812f1 cargo fmt bellman 2019-08-15 10:38:41 -06:00
Jack Grigg
4606a0cefb Migrate bellman to rand 0.5 2019-07-19 00:35:06 +02: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
9f748554d0 Add 'bellman/' from commit '10c5010fd9c2ca69442dc9775ea271e286e776d8'
git-subtree-dir: bellman
git-subtree-mainline: e924247e73
git-subtree-split: 10c5010fd9
2018-08-28 23:03:52 +01:00