François Garillot
023fdf2a2c
Rust added support for the ? operator on Option in 1.22
...
This converts a few instances of an early-returning unwrap to it.
2019-10-05 11:44:36 -07:00
Isis Lovecruft
28c2f2e3d1
Merge branch 'fix/unused-rand_os' into develop
2019-10-04 19:36:19 +00:00
Isis Lovecruft
ce2260afab
Implement stricter scalar malleability checking for signatures.
...
Previously, we were checking that the highest 3 bits were unset, which still
leaves 2^253 - 2^252 + 27742317777372353535851937790883648493 potential scalars
for the `s` component of a signature which are not strictly mod \ell.
This change fixes that.
Note: This change makes ed25519-dalek incompatible with ed25519-donna in that
some signatures produced by donna will be verifiable by donna but NOT VERIFIABLE
by dalek. On the other hand, libsodium exports a -DED25519_COMPAT feature,
which when enabled, means it is compatible with dalek with the
`legacy_compatibility` feature disabled. Otherwise, libsodium's behaviour is
identical to the behaviour enabled by default in this patch.
2019-10-04 19:34:00 +00:00
Isis Lovecruft
28eed1cba0
Add PublicKey::verify_strict() and Keypair::verify_strict() methods.
2019-10-04 02:54:13 +00:00
Isis Lovecruft
7dd99afb67
Remove most of the rand_os crate, which is only used for testing.
2019-10-04 02:46:02 +00:00
Isis Lovecruft
8a8fe302dd
Merge branch 'master' into develop
2019-10-04 02:40:49 +00:00
Isis Lovecruft
5870607aa7
Merge branch 'release/1.0.0-pre.2'
2019-10-04 02:40:38 +00:00
Isis Lovecruft
46811866cc
Bump ed25519-dalek version to 1.0.0-pre.2.
2019-10-04 02:16:06 +00:00
Isis Lovecruft
91426a2306
Merge branch 'fix/found-argument-alloc' into develop
2019-10-04 02:13:27 +00:00
Isis Lovecruft
1342e2a3a4
Fix no_std+alloc builds.
2019-10-04 02:05:20 +00:00
Isis Lovecruft
52ee801022
Fix Travis CI builds after change in features syntax parsing.
...
cf. https://travis-ci.org/isislovecruft/ed25519-dalek/jobs/593331585#L194
2019-10-04 01:43:24 +00:00
Isis Lovecruft
aa49b4cd8d
Fix two failing doctests.
2019-10-04 01:19:23 +00:00
Isis Lovecruft
dc4b77b551
Fix bad import and feature specification in benchmarks.
2019-10-03 23:15:50 +00:00
Arnaud Castellanos Galea
1c9f484d97
Drop the static lifetime for context in sign_prehashed
2019-09-30 16:42:52 +08:00
root
2d0c5323cb
errata and basepoint_odd_lookup_table test for better understanding
2019-09-04 13:15:09 +08:00
root
8da05f7e90
errata and basepoint_odd_lookup_table test for better understanding
2019-09-04 12:38:02 +08:00
root
f6015c66c2
errata for comment
2019-09-03 10:38:23 +08:00
root
fa849e014c
errata for vpmuludq
2019-09-02 11:26:11 +08:00
Henry de Valence
1f7d48fe36
Merge pull request #278 from 3for/comment-fix
...
README.md parallel_doc link fix
2019-08-09 09:35:26 -07:00
root
801bbff563
parallel_doc link fix
2019-08-09 16:19:18 +08:00
Henry de Valence
dc2df3cb70
Merge branch 'master' into develop
2019-08-07 13:25:57 -07:00
Henry de Valence
cf03d39f0f
Merge branch 'release/1.2.3'
2019-08-07 13:25:41 -07:00
Henry de Valence
4dc8073330
Update CHANGELOG and bump version
2019-08-07 13:24:36 -07:00
Henry de Valence
b01888a929
Merge pull request #260 from fabric-and-ink/ed-decompress-simplify
...
Remove unneeded check for negativity in edwards point decompression
2019-08-07 12:57:24 -07:00
Fabian Drinck
26ae185bc9
Apply suggestion by @hdevalence
...
Co-Authored-By: Henry de Valence <hdevalence@hdevalence.ca>
2019-08-07 19:43:10 +02:00
Henry de Valence
d86bf15781
Merge pull request #257 from dalek-cryptography/use_upstream_intrinsics
...
Use upstream intrinsics
2019-08-06 17:24:02 -07:00
Henry de Valence
cfa09d859f
Use upstream IFMA intrinsics now that they exist.
2019-08-06 17:14:31 -07:00
Henry de Valence
4bbcc28cdc
Merge pull request #275 from Pratyush/fix-docs-link-on-avx2
...
Fix link to AVX2 docs
2019-08-06 17:08:30 -07:00
Pratyush Mishra
912fe4794f
Fix link to AVX2 and IFMA docs
2019-08-06 16:53:54 -07:00
Henry de Valence
4bc2ec0082
Merge pull request #276 from dalek-cryptography/quarkslab
...
Fix issues found in Quarkslab audit
2019-08-06 16:08:23 -07:00
Henry de Valence
68b71578af
Merge pull request #274 from 3for/comment-fix
...
`curve_models` Comment fix
2019-08-06 16:07:13 -07:00
Henry de Valence
a480844992
Tighten a too-permissive debug_assert in NafLookupTable8.
...
This issue was found by Laurent Grémy & Nicolas Surbayrole of Quarkslab.
2019-08-06 15:21:06 -07:00
Henry de Valence
90baabe50b
Ensure Scalar Add and Sub produce canonical results.
...
Closes #238 .
This issue was discovered independently by both Jack "str4d" Grigg
(issue #238 ), who noted that reduction was not performed on addition, and
Laurent Grémy & Nicolas Surbayrole of Quarkslab, who noted that it was possible
to cause an overflow and compute incorrect results.
2019-08-06 15:20:19 -07:00
Jack Grigg
a3246d82e5
Tests showing that scalar addition and subtraction don't reduce mod l
2019-08-06 15:18:46 -07:00
root
ccaf86ea86
curve_models link in comment mismatch
2019-08-06 16:40:47 +08:00
Henry de Valence
542a7b54a3
Merge pull request #273 from dalek-cryptography/fix-width-7-naf
...
Add a missing wrapping_sub in NAF computation.
2019-08-05 19:24:46 -07:00
Henry de Valence
01d9e904e1
Add a missing wrapping_sub in NAF computation.
...
Found by @3for; this only affected width-7 NAF computations, which were never
used in the source tree (only width 5, optimal for dynamic cases, and 8, better
for static cases).
Closes #272
2019-08-05 15:56:56 -07:00
root
2a46cd3b20
add non-zero assert in field batch_invert
2019-08-01 15:02:15 +08:00
Henry de Valence
a174911c2b
Merge branch 'master' into develop
2019-07-31 15:27:34 -07:00
Henry de Valence
c6d8bfb48b
Merge branch 'release/1.2.2'
2019-07-31 15:26:58 -07:00
Henry de Valence
e6d580b0cf
Bump version to 1.2.2
2019-07-31 15:25:22 -07:00
Henry de Valence
cbbdbfb67f
Merge pull request #269 from dalek-cryptography/update-doc-include-paths
...
Update doc(include) paths.
2019-07-31 15:19:25 -07:00
Henry de Valence
5c18bfb6a7
Update doc(include) paths.
...
Since https://github.com/rust-lang/rust/pull/60938 the path root changed and
these new paths are required to compile on nightly.
Closes #268 .
2019-07-31 14:54:24 -07:00
Henry de Valence
09e2615589
Merge pull request #267 from dalek-cryptography/add-crypto-tag
...
'crypto' means 'cryptography'
2019-07-30 12:54:28 -07:00
Henry de Valence
78d9804bf9
'crypto' means 'cryptography'
2019-07-30 12:43:56 -07:00
Henry de Valence
526ce175d9
Merge pull request #266 from dsprenkels/patch-1
...
Fix a typo in AVX2
2019-07-22 10:05:55 -07:00
Daan Sprenkels
e4c086ab59
Fix a typo in AVX2
...
Last two (least significant) limbs should be `z8`, `z9`. Were probably
copy-paste typos.
2019-07-22 14:17:23 +02:00
Fabian Drinck
53da2aaaf4
Remove unneeded check for negativity in edwards point decompression
...
The function `FieldElement::sqrt_ratio_i` always returns a positive root
by definition. Therefore the test for negativity in the edwards point
decompression function always returns false and we only need to flip its
sign if `compressed_sign_bit` is set.
2019-06-07 21:04:12 +02:00
Henry de Valence
8c88e681f4
Merge branch 'master' into develop
2019-06-06 15:43:32 -07:00
Henry de Valence
a659b92305
Merge branch 'release/1.2.1'
2019-06-06 15:43:21 -07:00