Commit graph

1177 commits

Author SHA1 Message Date
Isis Lovecruft
ba9d3be011
Merge remote-tracking branch 'isislovecruft/develop' into develop 2017-03-13 23:49:13 +00:00
Henry de Valence
f80754a954 Further rename fixups in benchmark test names 2017-03-13 16:38:05 -07:00
Henry de Valence
45cc82d258 Move multiply() into the Mul impl 2017-03-13 16:38:05 -07:00
Henry de Valence
f11c97e75c Remove obsolete test code 2017-03-13 16:38:05 -07:00
Henry de Valence
d2a51197d7 Add a carry-reduction during subtraction. 2017-03-13 16:38:05 -07:00
Henry de Valence
b75a88458a Add monte carlo test for FieldElements 2017-03-13 16:38:05 -07:00
Henry de Valence
e1d3281c2d Add debug asserts for multiplication preconditions. 2017-03-13 16:38:05 -07:00
Henry de Valence
9524c079ee Reduce mod p in radix51 to_bytes 2017-03-13 16:38:05 -07:00
Henry de Valence
0fa8d8f4a7 Reduce to narrower range before to_bytes 2017-03-13 16:38:05 -07:00
Henry de Valence
24f11427a1 Add 2p to avoid underflows 2017-03-13 16:38:05 -07:00
Henry de Valence
a9cbca668b Implement squaring for radix51 2017-03-13 16:38:05 -07:00
Henry de Valence
df080411e0 Implement multiply() for radix51 2017-03-13 16:38:05 -07:00
Henry de Valence
d6465ccd5e Fix remaining compile errors for radix_51 2017-03-13 16:38:05 -07:00
Henry de Valence
147b9d90b8 Revert "Add radix51 impl of reduce"
This reverts commit 488e886d1e1b11400dedc6c41e7108e34c6747cc.
2017-03-13 16:38:05 -07:00
Henry de Valence
75baefabeb Stub remaining radix_51 functions with unimplemented!() 2017-03-13 16:38:05 -07:00
Henry de Valence
b515e43dfd Move to_bytes_64 to to_bytes for radix51 2017-03-13 16:38:05 -07:00
Henry de Valence
7591c74018 Add radix51 impl of reduce 2017-03-13 16:38:05 -07:00
Henry de Valence
08ac5a9068 Add radix51 impl of from_bytes 2017-03-13 16:38:05 -07:00
Henry de Valence
7f8b3fe594 Rename combine_coeffs to reduce 2017-03-13 16:38:05 -07:00
Henry de Valence
f16f5d1e73 Add minus_one for radix51 2017-03-13 16:38:05 -07:00
Henry de Valence
3eab4acbd8 Add p constant for subtraction 2017-03-13 16:38:05 -07:00
Henry de Valence
08ef9e5d1e Add constants in radix_51 form 2017-03-13 16:38:05 -07:00
Henry de Valence
4ef22b679c Implement sub_assign for radix_51 2017-03-13 16:38:05 -07:00
Henry de Valence
87001f9d6e Add utility for extracting constants in the new repr 2017-03-13 16:38:05 -07:00
Henry de Valence
4db735ca44 Add subtraction stub 2017-03-13 16:38:05 -07:00
Henry de Valence
eb66088cb9 Add to/from bytes for radix 51 2017-03-13 16:38:05 -07:00
Henry de Valence
afd42a4628 More feature-gating 2017-03-13 16:38:05 -07:00
Henry de Valence
a884260341 Add radix_51 and radix_25_5 features and start feature-gating 2017-03-13 16:38:05 -07:00
Henry de Valence
3a55a2f410 Add a test for radix-51 multiplication 2017-03-13 16:36:32 -07:00
Henry de Valence
92bf47f990 Clean up field tests 2017-03-13 16:36:32 -07:00
Henry de Valence
97b60d61ab draft of 64-bit multiplication 2017-03-13 16:36:32 -07:00
Isis Lovecruft
10fa989883
Print "CompressedEdwardsY" in Debug impl, not "CompressedPoint". 2017-03-13 23:29:13 +00:00
Henry de Valence
2610ab872a Feature-gate basepoint table creation on a nightly feature 2017-03-13 16:28:52 -07:00
Henry & Isis
049556147f Add wrapper for basepoint precomputations for decaf 2017-03-13 15:50:44 -07:00
Henry & Isis
c873f725a5 Rename BasepointTable as EdwardsBasepointTable. 2017-03-13 15:50:43 -07:00
Henry & Isis
f312160d2c Fixup errors introduced from not running yolocrypto tests by default 2017-03-13 15:50:43 -07:00
Henry de Valence
e757959bb8 Add benchmark for basepoint table creation 2017-03-13 15:50:43 -07:00
Henry de Valence
a4ed8e2b81 Use box syntax instead of an unsafe block 2017-03-13 15:50:43 -07:00
Henry de Valence
640f40287f Wrap the existing basepoint table as a BasepointTable 2017-03-13 15:50:43 -07:00
Henry de Valence
05fa1318b9 First work on dynamic basepoint table generation 2017-03-13 15:50:41 -07:00
Henry & Isis
7a2ea44ce6 Test multiplication by basepoint order 2017-03-13 15:49:18 -07:00
Henry de Valence
80d4566853 Merge remote-tracking branch 'tarcieri/nostd-cleanups' into develop 2017-03-13 15:00:20 -07:00
Isis Lovecruft
65136a202a
Merge remote-tracking branch 'isislovecruft/develop' into develop 2017-03-13 21:52:20 +00:00
Isis Lovecruft
f9c237bd6a
Typo fix in utils module docstring. 2017-03-10 02:36:15 +00:00
Isis Lovecruft
1f871ea0a0
Obsessive whitespace fix. 2017-03-10 02:36:01 +00:00
Isis Lovecruft
2039a66cb3
Fix two decaf unittests to use compress_edwards(). 2017-03-10 02:35:38 +00:00
Tony Arcieri
384cf1df31 no_std import cleanups
- Gate no_std on the "std" feature
- Import core when std is present
- Import collections when std is absent
- Add a placeholder gated "use" directive for Box in curve.rs
2017-03-08 00:19:08 -08:00
Henry de Valence
ab6d32efe1 Make functions pub to suppress dead code warnings 2017-03-07 23:03:48 -08:00
Henry de Valence
0e9dc1d38d Remove warnings about unused variables
These bindings are shadowed by the later let statements, so they're considered unused.
2017-03-07 23:01:49 -08:00
Henry de Valence
3f208359b3 Merge branch 'feature/test-reorg' into develop 2017-03-07 22:20:22 -08:00