Commit graph

995 commits

Author SHA1 Message Date
Isis Lovecruft
b8fa5ec3e0
Add constructors for compressed points from slices. 2018-09-26 02:07:15 +00:00
Henry de Valence
701cb1d078 Merge branch 'master' into develop 2018-09-25 17:22:45 -07:00
Henry de Valence
48ed5dc17c Merge branch 'release/0.20.0' 2018-09-25 17:22:31 -07:00
Henry de Valence
b0658b05f8 Bump version 2018-09-25 17:21:10 -07:00
Henry de Valence
09048920de
Merge pull request #197 from dalek-cryptography/update-subtle
Update subtle
2018-09-25 17:19:26 -07:00
Henry de Valence
2c70cf2c8f this was delayed, add it back later 2018-09-25 17:06:04 -07:00
Henry de Valence
27a9b9940d Update subtle to stable 1.0 2018-09-25 17:02:46 -07:00
Henry de Valence
9dab3641a5 Merge branch 'master' into develop 2018-09-17 12:36:56 -07:00
Henry de Valence
a855b4a1fb Merge branch 'release/0.19.1' 2018-09-17 12:35:51 -07:00
Henry de Valence
f95806e00d Bump version to 0.19.1
This fixes the AVX2 build on nightly.
2018-09-17 12:33:30 -07:00
Henry de Valence
59e06c543e Fix unbumped version number
This is too late for the 0.19.0 release (I missed it because I grepped for
"0.18.", and the version in the README doesn't specify a minor version), but it
will now be in line with the other version strings.

When we put out the 1.0.0-pre.0 release we can change both together (our docs
already say we've released it, because we inserted an extra version, oops).
2018-09-17 12:32:49 -07:00
Henry de Valence
10d8436f0d Update packed_simd version 2018-09-17 12:29:58 -07:00
Henry de Valence
7d29b86217 Update packed_simd version 2018-09-13 23:36:44 -07:00
Henry de Valence
1b116e5eae
Merge pull request #195 from isislovecruft/fix/typo-in-curve-model-docs
Fix a typo in the curve model docs.
2018-09-13 23:00:18 -07:00
Isis Lovecruft
819a85ef18
Fix a typo in the curve model docs. 2018-09-13 22:44:41 +00:00
Henry de Valence
484bf0148a
Merge pull request #192 from isislovecruft/fix/subtle-0.9.0
Bump subtle dependency version to 0.9.0.
2018-09-05 15:56:15 -07:00
Isis Lovecruft
bed5aa00c5
Bump subtle dependency version to 0.9.0. 2018-09-05 03:19:58 +00:00
Henry de Valence
a1299c5fde
Merge pull request #189 from dalek-cryptography/bump-byteorder-version
Bump byteorder version to avoid breaking on stable
2018-08-27 12:09:39 -07:00
Henry de Valence
acceea04f6 Bump byteorder version to avoid breaking on stable
As pointed out by @ruuda:

> This is more of a problem with `#[feature]` in Rust; once a feature becomes
> stable, having `#[feature]` becomes an error, so it is not easy to depend on a
> feature on nightly, and then have the same code work on stable once the feature
> is stabilized.

The earliest `byteorder` version without a `#[feature]` is `1.2.3`, so we
require any higher version than that one.

Closes #184.
Closes #186.
2018-08-27 11:48:53 -07:00
Henry de Valence
cdc661c80d
Merge pull request #185 from isislovecruft/feature/ristretto-decoding-cleanup
ristretto decoding cleanup
2018-08-20 14:47:57 -07:00
Isis Lovecruft
0c8a046340
Cleanup and comment Ristretto decoding to match explicit formulae. 2018-08-20 21:01:01 +00:00
Isis Lovecruft
7ef7de3461
Merge remote-tracking branch 'hdevalence/add-note-on-ffi' into develop 2018-08-10 22:33:14 +00:00
Isis Lovecruft
1046e8dd74
Merge remote-tracking branch 'hdevalence/fix-unbumped-version' into develop 2018-08-10 17:20:44 +00:00
Henry de Valence
47d85103d3 Add note on FFI to README.md
Closes #182.
2018-08-03 11:00:43 -07:00
Henry de Valence
869a464927 Fix unbumped version number
This is too late for the 0.19.0 release (I missed it because I grepped for
"0.18.", and the version in the README doesn't specify a minor version), but it
will now be in line with the other version strings.

When we put out the 1.0.0-pre.0 release we can change both together (our docs
already say we've released it, because we inserted an extra version, oops).
2018-07-27 10:56:07 -07:00
Henry de Valence
839358aae6 Merge branch 'master' into develop 2018-07-26 20:38:08 -07:00
Henry de Valence
ba3b6178f0 Merge branch 'release/0.19.0' 2018-07-26 20:37:55 -07:00
Henry de Valence
8a488d3032 Bump version number to 0.19.0
Add an interim version prior to 1.0.0-pre.0 in order to fix the AVX2
build.
2018-07-26 20:34:00 -07:00
Henry de Valence
3bed3ef787
Merge pull request #176 from hdevalence/more-pre-1.0-cleanups
More pre 1.0 cleanups
2018-07-26 20:27:11 -07:00
Henry de Valence
31090e79eb
Merge pull request #179 from hdevalence/ristretto_from_uniform
Expose a Ristretto::from_uniform_bytes function.
2018-07-26 20:22:27 -07:00
Henry de Valence
869eaba853
Merge pull request #178 from hdevalence/feature/migrate-to-packed-simd
Migrate to packed_simd from core::simd
2018-07-26 19:55:14 -07:00
Henry de Valence
259e2cd188 Expose a Ristretto::from_uniform_bytes function.
Why expose this instead of `from_hash`? Because it allows constructing
arbitrary-length chains of orthogonal generators from a XOF.
2018-07-26 19:04:56 -07:00
Henry de Valence
288625418d Migrate to packed_simd from core::simd 2018-07-26 12:40:34 -07:00
Henry de Valence
920bdb3279
Merge pull request #177 from samscott89/hash-fix
Fix distribution of curve points for hashing to Ristretto points.
2018-07-25 16:06:26 -07:00
Sam Scott
a1e2c83d31 Fix distribution of curve points for hashing to Ristretto points. 2018-07-25 18:52:52 -04:00
Henry de Valence
e4ad0ec60a Remove outdated note about powers-of-two 2018-07-25 12:23:08 -07:00
Henry de Valence
b7dab8d083 Add iterator length checks to multiscalar muls.
This partially re-adds functionality removed in commit

d2ce1ce5dc

We would like to require ExactSizeIterator, but unfortunately we can't
do that, since ExactSizeIterators aren't chainable, for (in my opinion)
silly reasons (chaining two 4-billion-element ExactSizeIterators could
overflow on 32-bit systems).  Instead we inspect the size hints manually
and assert that the lower and upper bounds are all equal.
2018-07-25 11:21:06 -07:00
Henry de Valence
82a5e18c29 Update docs to point to multiscalar traits 2018-07-25 10:54:31 -07:00
Henry de Valence
d3310837b8
Merge pull request #174 from hdevalence/alloc-cleanups_r1
Unify `alloc` and `std` cargo features (rebased #170)
2018-07-23 11:09:38 -07:00
Henry de Valence
d62fd8ebe4 Add prelude import to scalar.rs 2018-07-23 10:59:11 -07:00
Tony Arcieri
10e8abf926 Unify alloc and std cargo features
This change provides a common convention for using allocator-dependent
features with:

    #![cfg(feature = "alloc")]

When available, `Vec` is imported consistently as `prelude::Vec`, which
means modules that need access to `Vec` can simply do:

    use prelude::*;

and if an allocator is available, `Vec` will be in the crate prelude.

This allows all `alloc` vs `std` gating to be handled in `lib.rs`,
`build.rs`, and `prelude.rs` so the rest of the codebase doesn't have to
do any gating whatsoever.
2018-07-23 10:50:21 -07:00
Henry de Valence
8990a71b18
Merge pull request #173 from dalek-cryptography/revert-170-alloc-cleanups
Revert "Unify `alloc` and `std` cargo features"
2018-07-23 10:39:57 -07:00
Henry de Valence
affa1dc2f6
Revert "Unify alloc and std cargo features" 2018-07-23 10:38:31 -07:00
Henry de Valence
d6adeb54cc
Merge pull request #170 from tarcieri/alloc-cleanups
Unify `alloc` and `std` cargo features
2018-07-23 10:38:26 -07:00
Henry de Valence
f675f4cd2b fixup! Allow Options in the VartimeMultiscalarMul trait 2018-07-20 20:33:33 -07:00
Henry de Valence
36ade94596
Merge pull request #171 from isislovecruft/feature/scalar-default
Impl Default for Scalar
2018-07-20 15:39:59 -07:00
Tony Arcieri
e57778a5a8 Unify alloc and std cargo features
This change provides a common convention for using allocator-dependent
features with:

    #![cfg(feature = "alloc")]

When available, `Vec` is imported consistently as `prelude::Vec`, which
means modules that need access to `Vec` can simply do:

    use prelude::*;

and if an allocator is available, `Vec` will be in the crate prelude.

This allows all `alloc` vs `std` gating to be handled in `lib.rs`,
`build.rs`, and `prelude.rs` so the rest of the codebase doesn't have to
do any gating whatsoever.
2018-07-20 15:07:07 -07:00
Isis Lovecruft
b087551696
Impl Default for Scalar. 2018-07-20 21:36:38 +00:00
Isis Lovecruft
73b3a9617b
Merge remote-tracking branch 'hdevalence/remove-ristretto-notes' into develop 2018-07-20 19:56:55 +00:00
Isis Lovecruft
4d527cae4b
Merge branch 'feature/154-defaults' into develop 2018-07-20 19:52:34 +00:00