Commit graph

65 commits

Author SHA1 Message Date
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
Henry de Valence
b61ed818b8 Remove all remaining warnings 2017-03-07 01:37:31 -08:00
Henry de Valence
e446bc8a1f The identity point is already in EIGHT_TORSION 2017-03-07 00:58:32 -08:00
Henry de Valence
cf24cb8900 Also test points that are not the identity 2017-03-07 00:58:32 -08:00
Henry de Valence
47143e9114 Rewrite conditional assignment test for AffineNielsPoints 2017-03-07 00:58:32 -08:00
Henry de Valence
9414a2f4db Remove old tests that aren't so useful any more 2017-03-07 00:49:21 -08:00
Henry de Valence
78fe9c490d Eliminate BASE_CMPRSSD or rename it to constants::BASE_CMPRSSD and do misc cleanup 2017-03-07 00:48:36 -08:00
Henry de Valence
94416eb1cb Clean decompression_sign_handling 2017-03-07 00:11:47 -08:00
Henry de Valence
b5b0ac7628 Add doc comments to test vectors 2017-03-07 00:11:16 -08:00
Henry de Valence
0585af6c68 Move sqrt(-(A+2)) test to constants.rs 2017-03-07 00:03:59 -08:00
Henry de Valence
3a9ee16a30 Remove test_ prefix from test functions in curve.rs 2017-03-06 23:59:49 -08:00
Henry de Valence
31c350b6f2 Split benchmarks into their own module 2017-03-06 23:53:38 -08:00
Isis Lovecruft
9f0c6c86f3
Change another unittest compress() to compress_edwards(). 2017-03-07 01:33:38 +00:00
Henry & Isis
e5f5dea444 Rename to_{cached,precomputed} to to_{projective,affine}_niels 2017-03-05 15:27:26 -08:00
Isis Lovecruft
9171a03894
Merge branch 'feature/rename-compress' into develop 2017-03-04 05:52:57 +00:00
Isis Lovecruft
b81f84bee8
Merge branch 'feature/montgomery-x-format_r1' into develop 2017-03-04 05:48:12 +00:00
Isis Lovecruft
2c83d48cfa
Demote a docstring note to inline code comment to avoid confusing users. 2017-03-04 05:29:19 +00:00
Isis Lovecruft
20ace8da48
Rename compress() to compress_edwards(). 2017-03-04 03:41:47 +00:00
Isis Lovecruft
cfd0e8ad6e
Add method for recovery of Edwards x-coordinate given Montgomery (u, v).
This function is necessary for matching Signal's hash_to_point() behaviour.
2017-03-04 03:39:58 +00:00
Isis Lovecruft
b9de92aeaf
Add benchmarks for Edwards-Y and Mongomery-U decompression. 2017-03-04 03:39:57 +00:00
Isis Lovecruft
915f41c643
Fixup CompressedMontgomeryU::decompress() and ensure no divide-by-zeroes.
Also, match Signal behaviour, and split off recovery of other
coordinates into separate functions.
2017-03-04 03:39:56 +00:00
Isis Lovecruft
5edd8d6d26
Merge remote-tracking branch 'hdevalence/feature/montgomery-x-format_r1' into develop 2017-03-04 02:40:17 +00:00
Isis Lovecruft
1c9637490c
Obsessive whitespace fix. 2017-03-04 02:00:59 +00:00
Henry de Valence
5d3d114628 fixup! Properly handle exceptional points. 2017-02-27 23:15:39 -08:00
Henry de Valence
db53b58e89 Properly handle exceptional points. 2017-02-27 21:13:24 -08:00
Henry de Valence
19d452c2dc Test decompressing an invalid montgomery point 2017-02-27 13:42:13 -08:00
Henry de Valence
45fbcb45f6 First notes and code on Montgomery conversion 2017-02-27 13:41:50 -08:00
Henry de Valence
1dac2f53bb Implement Identity for CompressedEdwardsY 2017-02-26 15:25:05 -08:00
Henry de Valence
2cef5fcecd Add CompressedEdwardsY::as_bytes 2017-02-26 15:25:05 -08:00
Isis Lovecruft
e6b7192d5e
Merge branch 'feature/rename-niels-point' into develop 2017-02-25 01:26:33 +00:00
Isis Lovecruft
a649ea38ee
Rename {PreComputed,Cached}Point → {Affine,Projective}NielsPoint.
* FIXES Issue #28: https://github.com/isislovecruft/curve25519-dalek/issues/28
2017-02-25 00:47:06 +00:00
Henry de Valence
d450659b7f Rewrite CompressedEdwardsY::decompress() to use FieldElement::sqrt_ratio 2017-02-22 20:59:51 -08:00
Henry & Isis
f52e2ee37e Create BasepointMult and ScalarMult traits. 2017-02-21 13:38:59 -08:00
Henry de Valence
eec7747be7 Move Decaf code to decaf.rs 2017-02-21 13:38:59 -08:00
Henry de Valence
f18ebe9430 First draft of decaf decompression 2017-02-21 13:38:58 -08:00
Henry de Valence
3fc5f75300 Rename is_negative to is_negative_ed25519 2017-02-21 13:23:57 -08:00
Henry de Valence
ee5ea0a013 Make double functions public 2017-02-21 13:23:11 -08:00
Henry de Valence
dd23a48ade Make ExtendedPoint attrs pub as we need them in constants.rs 2017-02-21 13:23:11 -08:00
Henry de Valence
79afc6bd0f Add debugging checks to test if points are on the curve 2017-02-21 13:23:10 -08:00
Isis Lovecruft
44e7d500db
Remove unused import of PartialEq and Eq in curve module. 2017-02-21 21:01:58 +00:00
Isis Lovecruft
6f67a7d716
Rename util module to subtle.
* CHANGE subtle module documentation slightly to clarify the module's purpose.
 * FIXES issue #25.
2017-02-21 06:01:22 +00:00
Isis Lovecruft
3eb5dcaae7
Implement CTEq for ExtendedPoint. 2017-02-21 05:45:37 +00:00
Isis Lovecruft
1381e07ffb
Implement a method for determining if an element is the identity.
This corresponds to ge_isneutral() in Open Whispersystems' ed25519 library.
2017-02-21 05:43:20 +00:00
Isis Lovecruft
03589dff43
Add method for determining if an ExtendedPoint is of small order. 2017-02-21 05:41:16 +00:00
Isis Lovecruft
51f59565f5
Typo fix; Negateable → Negatable.
* Fixup on #22.
2017-02-21 04:15:15 +00:00
Henry de Valence
dc5621f527 Use conditional_negate in select_precomputed_point 2017-02-20 15:30:59 -08:00
Henry de Valence
eaa5d3e595 Derive Eq, PartialEq for CompressedEdwardsY 2017-02-19 17:39:48 -05:00
Isis Lovecruft
366e9029bf
Rename a CompressedPoint from #17 to CompressedEdwardsY (from #6). 2017-01-27 02:15:31 +00:00
Isis Lovecruft
d88b6c01c4
Merge remote-tracking branch 'tarcieri/no-std' into develop 2017-01-27 02:13:04 +00:00