485 Commits

Author SHA1 Message Date
Isis Lovecruft
8c8c04cb32 Merge branch 'release/0.9.0' 2019-01-17 23:17:40 +00:00
Isis Lovecruft
f851aaf464 Bump ed25519-dalek version to 0.9. 0.9.0 2019-01-17 22:41:18 +00:00
Isis Lovecruft
35b4dfd24d Bump rand dependency version to 0.6. 2019-01-17 22:39:48 +00:00
Артём Павлов [Artyom Pavlov]
762eb0c470 use rand_core 2019-01-05 15:58:59 +03:00
isis agora lovecruft
8ebe5c799b Merge pull request #66 from isislovecruft/feature/63-refactor
Refactor main module into separate modules and perform automated/general cleanups
2018-12-30 05:03:01 +00:00
Isis Lovecruft
0ddf39e443 Revise some module descriptions. 2018-12-30 04:27:40 +00:00
Isis Lovecruft
42b571eb24 Remove unused clear_on_drop import from tests. 2018-12-30 04:26:56 +00:00
Isis Lovecruft
82cdcb9cc9 Fix benchmarks after merging #64. 2018-12-30 04:26:22 +00:00
Isis Lovecruft
8b30d4084a Run rustfmt on src/ed25519.rs. 2018-12-30 04:16:03 +00:00
Isis Lovecruft
fa726cfdcc Run rustfmt on src/lib.rs. 2018-12-30 04:12:33 +00:00
Isis Lovecruft
ad49d31bbc Run rustfmt on src/errors.rs. 2018-12-30 04:10:59 +00:00
Isis Lovecruft
811793ba2b Run rustfmt on src/secret.rs. 2018-12-30 04:10:09 +00:00
Isis Lovecruft
d853856c36 Run rustfmt on src/public.rs. 2018-12-30 04:07:50 +00:00
Isis Lovecruft
a141863542 Run rustfmt on src/signature.rs. 2018-12-30 04:05:20 +00:00
Isis Lovecruft
144e87bfc8 Remove unnecessary tests/mod.rs file. 2018-12-30 04:01:39 +00:00
Isis Lovecruft
e6528bd683 Create new module for public key code. 2018-12-30 03:53:42 +00:00
Isis Lovecruft
e3d7c16aac Make errors module private. 2018-12-30 03:53:42 +00:00
Isis Lovecruft
6fea2e1ea0 Realphabetise extern crates. 2018-12-30 03:53:42 +00:00
Isis Lovecruft
f6ec28c077 Create module for secret key types. 2018-12-30 03:53:42 +00:00
Isis Lovecruft
1cf581d67d Add lints (and fix warnings) for Rust 2018 code. 2018-12-30 03:27:01 +00:00
Isis Lovecruft
ce857a50e7 Remove unnecessary #![allow(unused_features)] lint. 2018-12-30 03:11:28 +00:00
Isis Lovecruft
d748a41894 Create new module for Signature type. 2018-12-30 03:03:40 +00:00
Isis Lovecruft
80e72db677 Create new module for constants. 2018-12-30 02:36:49 +00:00
Isis Lovecruft
eb8ab9f06b Organise integration tests into modules. 2018-12-30 02:32:21 +00:00
Isis Lovecruft
e88da5ea85 Move integration tests to their own directory. 2018-12-30 02:32:21 +00:00
Isis Lovecruft
4ee77b915e Avoid using deprecated import path for rand::rngs::OsRng. 2018-12-30 02:31:47 +00:00
Isis Lovecruft
486f23f1ad Fix some inconsistent terminology in docstrings. 2018-12-30 02:31:47 +00:00
isis agora lovecruft
d009239651 Merge pull request #65 from isislovecruft/feature/64-hardcode-sha2
Hardcode use of sha2::Sha512 in most cases
2018-12-30 01:28:25 +00:00
Isis Lovecruft
d81d43e3ae Hardcode use of sha2::Sha512 in most cases.
This implements https://github.com/dalek-cryptography/ed25519-dalek/issues/64

You can still choose the "prehash" algorithm, as long as it has 64 bytes of
output.  Otherwise, everything is hardcoded to use sha2::Sha512.  To use a
different implementation you'll need a [patch.crates-io] section in cargo
config.
2018-12-30 00:40:01 +00:00
isis agora lovecruft
9fe447aeb8 Merge pull request #62 from isislovecruft/feature/61-decompress-caching
Cache decompressed PublicKey points
2018-12-24 12:09:24 +00:00
Isis Lovecruft
7877a7fa00 WARNING: Remove #[repr(C)] from all types. 2018-12-23 12:00:59 +00:00
Isis Lovecruft
8dbaf9a8d2 Move PublicKey point decompression into initialisation.
This caches the public key internally so that we effectively get a free
speedup on key reuse in regular signature verification, similar to that in
batch verification.  (However, this also "speeds up"¹ batch verifications.)

¹ Less of a speed up than moving the computation elsewhere, but the speed up
on reuse still also applies to key reuse for batch verification.
2018-12-23 12:00:59 +00:00
Isis Lovecruft
4f53a4826d Add comment in .travis.yml about testing no_std. 2018-12-22 13:27:44 +00:00
Isis Lovecruft
aee0043a92 Also exercise the test suite with the sha2 feature enabled in CI. 2018-12-22 13:23:49 +00:00
Isis Lovecruft
1459e72688 Only test serde feature on stable to save CI resources. 2018-12-22 13:20:44 +00:00
Isis Lovecruft
3d697bf27a Fix doctests which relied on the sha2 feature being enabled. 2018-12-22 13:13:21 +00:00
Isis Lovecruft
a9e5410f69 Fix serialised size assumptions from #48.
Unfortunately the serialised size is likely never going to be the same
as the type's size in memory, as most serialisation formats define
additional headers for parsing safety reasons, such as buffer lengths
and type information.
2018-12-22 13:13:21 +00:00
Isis Lovecruft
d052e63da8 Enabling std feature can now enable rand/std.
Previously it pulled in a bunch of fuschia dependencies regardless of
target system.
2018-12-22 12:22:02 +00:00
Isis Lovecruft
80ae5d0683 Cleanup RNG usage after merging #57. 2018-12-22 12:20:59 +00:00
Isis Lovecruft
b9f078af16 Remove default-features=false from rand dependency.
cf. https://github.com/rust-random/rand/issues/645
2018-12-22 12:14:45 +00:00
Isis Lovecruft
0708974aaa Bump curve25519-dalek dependency to version 1.0. 🎉 2018-12-22 12:10:03 +00:00
isis agora lovecruft
85285576a7 Merge pull request #57 from IronCoreLabs/rand-0.6
Rand 0.6 version bump
2018-12-18 01:33:57 +00:00
Isis Lovecruft
0dab8943a1 Merge remote-tracking branch 'garious/add-as-ref' into develop 2018-12-18 01:13:13 +00:00
isis agora lovecruft
2c22ff648a Merge pull request #60 from dalek-cryptography/revert-49-add-as-ref
Revert "Add AsRef instances for PublicKey and SecretKey"
2018-12-18 01:11:43 +00:00
isis agora lovecruft
26e017df7c Revert "Add AsRef instances for PublicKey and SecretKey" 2018-12-18 01:09:00 +00:00
isis agora lovecruft
91f5546a83 Merge pull request #49 from garious/add-as-ref
Add AsRef instances for PublicKey and SecretKey
2018-12-18 01:08:11 +00:00
isis agora lovecruft
60dea0b3b1 Merge pull request #48 from garious/serialized-size
Add tests for upgraded generic_array
2018-12-18 00:46:05 +00:00
isis agora lovecruft
f01b2767b6 Merge pull request #47 from garious/fix-doc-tests
Fix serde doc tests
2018-12-18 00:12:20 +00:00
Colt Frederickson
1132665ac2 Update to 1.0.0-pre1 curve25519 2018-11-19 10:13:59 -07:00
Colt Frederickson
42b5d6ada9 Rand 0.6 version bump 2018-11-14 17:08:32 -07:00