Henry & Isis
db17dc4b78
Add Eq implementation for DecafPoint
2017-02-21 13:39:00 -08:00
Henry & Isis
bf19df64f0
Add ScalarMult and BasepointMult impls for DecafPoint
2017-02-21 13:39:00 -08:00
Henry & Isis
084c29c4ed
Implement addition and subtraction for DecafPoint.
2017-02-21 13:39:00 -08:00
Henry & Isis
f52e2ee37e
Create BasepointMult and ScalarMult traits.
2017-02-21 13:38:59 -08:00
Henry de Valence
66e598a47c
Minor doc tweaks
2017-02-21 13:38:59 -08:00
Henry de Valence
0992237233
XY is a misleading variable name, use T instead
2017-02-21 13:38:59 -08:00
Henry de Valence
ec82e7a4f4
Create a DecafPoint struct, wrapping an ExtendedPoint
2017-02-21 13:38:59 -08:00
Henry de Valence
08fc10f356
Rename DecafPoint -> CompressedDecaf
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
a415caa9fb
Add a seperate invsqrt function.
...
This code isn't constant-time, but maybe should be. However that would
prevent a bunch of nice things (e.g., Option types). Probably good to
think about this.
2017-02-21 13:38:58 -08:00
Henry de Valence
ee5958c407
Add is_[non]negative_decaf functions.
...
Computes whether a point is nonnegative in the same way as Mike Hamburg's code.
2017-02-21 13:37:50 -08:00
Isis Lovecruft
11bc81da89
Bump the version to 0.2.2.
2017-02-21 21:27:54 +00:00
Isis Lovecruft
86c29ff6e7
Add Cargo.toml keywords, categories, and revise description.
2017-02-21 21:27:12 +00:00
Isis Lovecruft
85c77f5da0
Add a homepage and links to documentation in Cargo.toml.
2017-02-21 21:26:44 +00:00
Henry de Valence
3fc5f75300
Rename is_negative to is_negative_ed25519
2017-02-21 13:23:57 -08:00
Henry de Valence
5720e249ab
Add constants for points of the eight-torsion subgroup.
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
82041c2c67
Add constant for bytes of (p-1)/2.
2017-02-21 13:23:11 -08:00
Henry de Valence
363ea405d4
Add constant for a-d = -1-d
2017-02-21 13:23:11 -08:00
Henry de Valence
6fd3028956
Add constant for 4*d
2017-02-21 13:23:10 -08:00
Henry de Valence
fb0c431184
Add constant for MSQRT_M1, equal to -SQRT_M1
2017-02-21 13:23:10 -08:00
Henry de Valence
e1feb653be
Add constant value of 1/2 (mod p)
2017-02-21 13:23:10 -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
Henry de Valence
cb4ff3097c
Add FieldElement::is_zero()
2017-02-21 13:23:10 -08:00
Isis Lovecruft
3231a6d33c
Merge branch 'master' into develop
2017-02-21 21:21:07 +00:00
Isis Lovecruft
b7660d3fe7
Merge branch 'release/0.2.1'
2017-02-21 21:21:01 +00:00
Isis Lovecruft
c6c04bf207
Bump version to 0.2.1.
2017-02-21 21:19:20 +00:00
Isis Lovecruft
d87930e7b7
Bump curve25519-dalek version to use 0.4.0.
2017-02-21 21:19:00 +00:00
Isis Lovecruft
409f329890
Change link to repository to github.
2017-02-21 21:18:40 +00:00
Isis Lovecruft
fb7b048ea2
Merge branch 'master' into develop
2017-02-21 21:05:35 +00:00
Isis Lovecruft
d0bc40783b
Merge branch 'release/0.4.0'
2017-02-21 21:05:29 +00:00
Isis Lovecruft
44e7d500db
Remove unused import of PartialEq and Eq in curve module.
2017-02-21 21:01:58 +00:00
Isis Lovecruft
78701d5441
Bump version to 0.4.0.
2017-02-21 20:59:17 +00:00
Isis Lovecruft
1dac334b84
Whitespace fix.
2017-02-21 20:59:04 +00:00
Isis Lovecruft
a6850f8e82
Fix version number in install instructions in README.
2017-02-21 06:15:48 +00:00
Isis Lovecruft
e4d041836e
Move load3 and load4 to new utils module and remove #[allow(dead_code)].
2017-02-21 06:15:08 +00:00
Isis Lovecruft
4b738c7e19
Remove #[allow(dead_code)] from arrays_equal_ct().
2017-02-21 06:06:16 +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
aad1d1751a
Merge branch 'feature/9-vxeddsa-functionality_r2' into develop
2017-02-21 05:50:12 +00:00
Isis Lovecruft
3eb5dcaae7
Implement CTEq for ExtendedPoint.
2017-02-21 05:45:37 +00:00
Isis Lovecruft
b1afdf5204
Implement CTEq for FieldElement.
2017-02-21 05:44:35 +00:00
Isis Lovecruft
5308fef210
Add CTEq trait and implement it for Scalar.
2017-02-21 05:44:35 +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
7b57be69fd
Implement constant time equality check for scalars.
2017-02-21 05:41:14 +00:00
Isis Lovecruft
32da4c7d50
Implement Neg for Scalar.
2017-02-21 05:41:14 +00:00
Isis Lovecruft
51f59565f5
Typo fix; Negateable → Negatable.
...
* Fixup on #22 .
2017-02-21 04:15:15 +00:00
Isis Lovecruft
9154e59ec1
Merge remote-tracking branch 'hdevalence/feature/conditional-negation' into develop
2017-02-21 04:13:29 +00:00