Commit Graph

95 Commits

Author SHA1 Message Date
Jack Grigg
c49590bab7
Change all remaining uses of *Field to reference ff crate 2018-07-02 16:04:52 +01:00
Jack Grigg
a9d8079c2a
Replace implementations of Fq and Fr with derives 2018-07-02 15:48:12 +01:00
Jack Grigg
d9d711ebb7
Use explicit imports instead of re-exporting the ff crate 2018-07-02 15:48:12 +01:00
Jack Grigg
1db099f1cc
Use ff crate for Field traits 2018-07-02 15:47:52 +01:00
Sean Bowe
da5f1d3e37
Update to latest rustfmt 2018-05-17 11:59:20 -06:00
Sean Bowe
97bdd1655f
Update clippy 2018-05-17 10:44:28 -06:00
str4d
98bab6877a Add read_le and write_le to PrimeFieldRepr 2018-05-17 16:50:40 +12:00
Sean Bowe
2d12b9a858
Apply newer rustfmt rules. 2018-03-29 11:18:15 -06:00
Sean Bowe
fcaddaa356
Update Clippy to support latest nightly, and fix some lints. 2018-03-29 10:13:00 -06:00
Sean Bowe
4cf5a534ec
i128_type feature has been stabilized in Rust. 2018-03-29 09:18:26 -06:00
Sean Bowe
53083f4290
Apply rustfmt to the codebase. 2018-02-21 11:08:58 -07:00
bmerge
da717f4472 Auto merge of #75 - ebfull:primerepr-fixes, r=ebfull
PrimeRepr improvements

These are API-breaking changes that make `PrimeRepr` a little nicer.
2018-02-21 15:56:41 +00:00
Sean Bowe
541fda7580
Fix misleading comments on write_be and read_be. 2018-02-13 17:14:17 -07:00
Sean Bowe
b971bdedda
Rename divn/muln to shr/shl. 2018-02-13 17:07:10 -07:00
Sean Bowe
a0fcf717c8
add_nocarry and sub_noborrow should no longer return anything. 2018-02-13 16:41:10 -07:00
Jason Davies
bce9f5d639 Update clippy and fix code indentation.
(The code indentation issue was not caught by clippy -- I noticed it by
chance!)
2018-02-13 16:02:30 +00:00
Sean Bowe
04a32fb443
Introduce expose-arith unstable feature for exposing arithmetic functions downstream. 2017-12-04 21:47:45 -07:00
Sean Bowe
b8394bf14d
Fix some comments. 2017-11-26 03:09:06 -07:00
Sean Bowe
aa0cc06e5e
Scalar field should be guaranteed to be SqrtField. 2017-11-25 20:57:10 -07:00
bmerge
affead11a5 Auto merge of #67 - ebfull:static-engine, r=ebfull
Engine should always be 'static, for flexibility in downstream code.
2017-11-21 06:47:28 +00:00
Sean Bowe
4a1ac94799
Implement Clone for Bls12. 2017-11-20 23:53:58 -07:00
Sean Bowe
4b366a143d
Ensure Engine's are always Clone. 2017-11-20 23:20:11 -07:00
Sean Bowe
f32cb40929
Engine should always be 'static, for flexibility in downstream code. 2017-11-20 12:22:51 -07:00
Sean Bowe
471db6ab27
Enforce that Fr of Engine is the scalar for curve points, for simpler downstream abstractions. 2017-11-12 16:19:08 -07:00
bmerge
364796d88c Auto merge of #58 - ebfull:derive-clone, r=ebfull
Derive `Clone` for G1/G2 encodings.

AFAIK this will finally work on stable when the next version of Rust is released.

Closes #55
2017-10-12 16:45:21 +00:00
Sean Bowe
12b9606b9c
G1/G2 rand() should produce elements of unknown exponent. 2017-10-10 01:13:35 -06:00
Sean Bowe
65e50a9e5a
Allow scale_by_cofactor to be dead code temporarily. 2017-10-09 17:14:36 -06:00
Michele Orrù
e5607bb528 Add "scale_by_cofactor".
Add a function for Affine types that multiplies point by the cofactor of the
group.
2017-10-09 10:04:22 +02:00
Sean Bowe
dbac57c27b
Further refactoring of get_point_from_x() 2017-10-05 12:35:04 -06:00
Sean Bowe
683f21a4d5
Remove spurious newline. 2017-10-04 14:53:42 -06:00
Sean Bowe
85b95750e2
Fix comment about u128-support. 2017-10-04 14:09:40 -06:00
Sean Bowe
931257599d
Refactor code for finding affine points from x-coordinates. 2017-10-04 11:43:42 -06:00
Sean Bowe
60887521b6
Derive Clone for {G1|G2}{Uncompressed|Compressed}. 2017-10-03 14:35:00 -06:00
Sean Bowe
18c75f11ab
Account for negative curve parameter to be compatible with RELIC. 2017-10-03 14:27:01 -06:00
Sean Bowe
67f5fbc94c
More modifications to satisfy clippy. 2017-09-28 17:37:54 -06:00
Sean Bowe
05339414cc
Update clippy and compensate for new lints. 2017-09-28 17:10:06 -06:00
Sean Bowe
4fe3e1d6e3
Use associated constants for simple constants like these. (Closes #39.) 2017-09-28 16:08:56 -06:00
Sean Bowe
93e2a132b5
Mask rather than divn, closes #50. 2017-09-28 13:15:29 -06:00
Sean Bowe
291fa71914
This coercion doesn't take place on stable yet. 2017-09-28 13:03:01 -06:00
Sean Bowe
6708878f4c
Elide these lifetimes. 2017-09-28 11:39:53 -06:00
Sean Bowe
bda22db9d5
Always recommend a window table size. 2017-09-28 08:38:13 -06:00
Sean Bowe
894b44d034
These structures are no longer exported outside the crate, and these assertions are unnecessary now that the external API can enforce them. 2017-09-28 08:12:37 -06:00
Sean Bowe
06f6334679
Change to docs for satisfying clippy. 2017-09-27 20:06:51 -06:00
Sean Bowe
d230603190
Introduce a more typesafe wNAF API, and remove the unstable-wnaf feature. 2017-09-27 19:09:59 -06:00
str4d
3ef34b750c
Move benchmarks under benches/ so tests compile on stable
Closes #36.
2017-09-27 17:45:24 +01:00
str4d
39920186b3
Force public structures to implement Debug
Closes #23.
2017-09-26 15:59:50 +01:00
Michele Orrù
9846ad2d17 Some (easy) cleanups as suggested from @ebfull.
Thanks!
2017-08-24 20:13:07 +02:00
Michele Orrù
2ac2d1213d Some (easy) cleanups as suggested from @daira.
Thanks!
2017-08-23 19:17:20 +02:00
Michele Orrù
a86d0b7270 s/Q/Quadratic/ in LegendreSymbol enum.
Proposed by @ebfull.
2017-08-23 19:10:34 +02:00
Michele Orrù
6feb0f802f Merge traits SqrtField and LegendreField into SqrtField. 2017-08-23 19:08:00 +02:00