Commit graph

2282 commits

Author SHA1 Message Date
Isis Lovecruft
a6e0019ae4
Merge remote-tracking branch 'nickray/towards-no-std' into develop 2019-03-12 21:11:09 +00:00
Isis Lovecruft
1edc2965ad
Fix typo in README. 2019-03-12 20:52:34 +00:00
DebugSteven
ba389040de implement Zeroize for Scalar and MontgomeryPoint 2019-03-03 17:09:34 -07:00
Isis Lovecruft
daf86298c6
Merge branch 'master' into develop 2019-02-28 22:45:11 +00:00
Isis Lovecruft
45bc970eec
Merge branch 'release/0.5.1' 2019-02-28 22:45:02 +00:00
Isis Lovecruft
78b46c4abe
Bump x25519-dalek version to 0.5.1. 2019-02-27 23:36:29 +00:00
Isis Lovecruft
ea2f39afa5
Ignore doctests since they were moved to actual tests. 2019-02-27 22:01:43 +00:00
Isis Lovecruft
23e61b7063
Merge remote-tracking branch 'rozbb/master' into develop 2019-02-27 21:51:37 +00:00
Isis Lovecruft
60f276db72
Fix README examples and doctests. 2019-02-27 20:45:55 +00:00
Michael Rosenberg
2a58e35b23
PublicKey now derives Copy, Clone, Debug 2019-02-27 12:40:14 -05:00
Henry de Valence
2ffd916dc7
Merge pull request #36 from DebugSteven/the-number-5
Doc version bump to 0.5
2019-02-16 17:56:26 -08:00
DebugSteven
ad8dd8430b bump installation version to 0.5 in docs 2019-02-16 18:46:11 -07:00
Henry de Valence
b57cdba0a3 Merge branch 'master' into develop 2019-02-16 13:47:28 -08:00
Henry de Valence
34676d3360 Merge branch 'release/0.5.0' 2019-02-16 13:47:14 -08:00
Henry de Valence
ebdd71b54b Bump version to 0.5.0 2019-02-16 13:46:06 -08:00
Henry de Valence
724c929130
Merge pull request #35 from DebugSteven/staticsecret
Static secret keys
2019-02-16 13:38:47 -08:00
Henry de Valence
aee783ae82
use clamp_scalar for StaticSecret
This ensures that the `StaticSecret`'s scalar always has the X25519 bit-twiddles applied.

Co-Authored-By: DebugSteven <debugsteven@gmail.com>
2019-02-16 16:31:05 -05:00
Henry de Valence
bcea24308f Fix benchmark 2019-02-16 10:17:15 -08:00
Henry de Valence
e25c72b476 Update README tests and ensure they're run in Travis. 2019-02-16 10:13:39 -08:00
DebugSteven
6797c0969f summarize how types are used & how they relate to one another 2019-02-16 10:57:42 -07:00
DebugSteven
29edaa17ac informative doc comments 2019-02-16 10:22:06 -07:00
DebugSteven
ad670a4d03 methods to convert a StaticSecret to and from bytes 2019-02-16 09:42:56 -07:00
DebugSteven
4caffdcca0 impl StaticSecret & create DH method that borrows our StaticSecret 2019-02-16 09:14:43 -07:00
DebugSteven
9fe535dcc7 rename EphemeralPublic to PublicKey 2019-02-16 08:57:09 -07:00
Henry de Valence
0fac27bbc4 Merge branch 'master' into develop 2019-02-15 13:48:51 -08:00
Henry de Valence
ca6305232f Merge branch 'release/1.1.3' 2019-02-15 13:48:39 -08:00
Henry de Valence
bd96f25baa Bump patch version 2019-02-15 13:47:16 -08:00
Henry de Valence
d4cc9997ec
Merge pull request #233 from dalek-cryptography/revert-rng-changes-from-219
Revert #219.
2019-02-15 13:44:27 -08:00
Henry de Valence
9a623868c5 Revert #219.
See discussion at https://github.com/dalek-cryptography/curve25519-dalek/issues/232 , copied below:

`1.1` changed the trait bounds for `RistrettoPoint::random` and `Scalar::random`, see #222 and #219.

These changes have two benefits:
* they unlink us from the `rand` crate and make us depend only on `rand_core`;
* they allow passing both owned and borrowed RNGs.

The change was not supposed to be a breaking change, since the new bounds are strictly more general than the old ones (as every `RngCore` is an `Rng` and every `&mut RngCore` is an `RngCore`), so the new bound is satisfied in every situation where the old bound applied.

The `1.1.0-pre.0` version didn't cause problems on the crates I tested it on, but there was an unexpected problem: ce71c93a9a/spacesuit/src/value.rs (L160-L161) broke, since it took a borrow as input and used it twice. So there was slight breakage.

One option is to revert the changes (probably just the ones from #219) and release 1.1.3; another would be to fix up `slingshot` and leave the new bound.
2019-02-15 13:30:05 -08:00
Henry de Valence
d41026e7d9 Merge branch 'master' into develop 2019-02-15 11:45:40 -08:00
Henry de Valence
a95c5040d6 Merge branch 'release/1.1.1' 2019-02-15 11:45:20 -08:00
Henry de Valence
96796e620e Bump patch version 2019-02-15 11:32:54 -08:00
Henry de Valence
64c542ec84 Bump patch version 2019-02-15 11:20:25 -08:00
Henry de Valence
b8c62ec4b4 Attempt to fix cfg(rustdoc) on docs.rs
Building the docs currently doesn't work, because rustdoc enables parts of the
code (to document them) which then don't check (because there are missing
exports or dependencies).  This **should** fix the issue, but there's no way to
test without publishing a new version.
2019-02-15 11:18:25 -08:00
Henry de Valence
77b4c7b30d Merge branch 'master' into develop 2019-02-15 10:12:56 -08:00
Henry de Valence
99de6a7039 Merge branch 'release/1.1.0' 2019-02-15 10:12:48 -08:00
Henry de Valence
ad838ecd73 Remove -pre.0; reword CHANGELOG entries. 2019-02-15 10:11:18 -08:00
Henry de Valence
b29943e7da Merge branch 'master' into develop 2019-02-14 14:51:16 -08:00
Henry de Valence
8b2742cb9d Merge branch 'release/1.1.0-pre.0' 2019-02-14 14:51:03 -08:00
Henry de Valence
a35adbef84 Bump version number to 1.1.0-pre.0 2019-02-14 14:49:36 -08:00
Henry de Valence
a38b77b965 Add a changelog. 2019-02-14 14:44:49 -08:00
Henry de Valence
a67accd635 Merge branch 'burdges-rng_ref' into develop 2019-02-14 14:38:26 -08:00
Henry de Valence
66b38ce5fc Merge branch 'rng_ref' of git://github.com/burdges/curve25519-dalek into burdges-rng_ref 2019-02-14 14:38:14 -08:00
Henry de Valence
63c19c1dcd Merge branch 'newpavlov-rand_core' into develop 2019-02-14 14:31:28 -08:00
Henry de Valence
cf7a1a4a0f Merge branch 'rand_core' of git://github.com/newpavlov/curve25519-dalek into newpavlov-rand_core 2019-02-14 14:29:58 -08:00
Henry de Valence
a1123e7cd3
Merge pull request #230 from hdevalence/updated-precomputation
Multiscalar multiplication with precomputation.
2019-02-14 12:18:29 -08:00
Henry de Valence
47967b49f0 Use rerandomized inputs for variable-time benchmarks.
This avoids potentially misleading benchmark results where the memory cost of
precomputation becomes "free" as re-running the benchmark loop lifts exactly
the required table entries into the highest-level caches.
2019-02-14 09:38:09 -08:00
Henry de Valence
2c3629b30e Add a separate benchmark for pure-fixed multiscalar mul. 2019-02-14 07:16:20 -08:00
Henry de Valence
092ff52cb0 Remove constant-time multiscalar precomputation.
This doesn't (yet) give any speedup over the non-precomputed multiscalar
multiplication, and it's not clear that it's a good idea to commit to
supporting it in the future.  Removing it means that it's not committed-to as
part of the public API, but the source is still there in the tree if we want to
revisit it later.
2019-02-13 12:26:31 -08:00
Henry de Valence
73eee8a1da
Merge pull request #231 from hdevalence/fix-to-monty-doc
Fix comment on Montgomery conversion.
2019-02-12 19:31:42 -08:00