Commit graph

2353 commits

Author SHA1 Message Date
Isis Lovecruft
91a0faea35
Move CoC section from CONTRIBUTING.md to new file.
This helps Github's UI show that we have one and autolink to it.
2020-08-18 00:44:52 +00:00
bunnie
a2835635e7 add test for BRZ instruction
a simple loop that does factorial.
2020-08-15 05:51:21 +08:00
bunnie
ee8e719b06 add test case to exercise the re-overflow corner case
it doesn't happen, i think there is a property of the math
that makes us safe but i can't reason about what it is.
2020-08-14 18:21:56 +08:00
bunnie
2d3e37495d increase number of random multiply vectors 2020-08-14 14:42:26 +08:00
bunnie
f61a91c6b6 add some more rigorous test cases
catch the case that the 14th limb overflows into the 15th at the
final carry propagate step
2020-08-14 02:29:10 +08:00
bunnie
6e6ac6ade4 add multiply vectors 2020-08-13 04:46:51 +08:00
bunnie
616801bd4c add test is not working 2020-08-10 18:32:46 +08:00
bunnie
c8bd4211f6 edit test to include normalization after add 2020-08-08 02:11:00 +08:00
bunnie
8091a73b80 try to turn off "std" inclusion for the assembler crate
...unsuccessful tho. Rust features are hard.
2020-08-07 23:39:02 +08:00
bunnie
f29aad18da add a rule to ignore the .bin outputs that are test vectors 2020-08-07 23:13:38 +08:00
bunnie
8545f381d7 add project settings 2020-08-07 23:13:09 +08:00
bunnie
11131146be add test vector generation infrastructure for engine25519 2020-08-07 23:12:05 +08:00
Chris Beck
bb82d616de Make use rand::... gated on cfg(feature = "rand")
This is no longer actively breaking our no_std build, but I think
it's still technically a minor bug, and further case of issue #108
2020-08-04 11:58:07 -07:00
Isis Lovecruft
04116902cd
Merge branch 'master' into develop 2020-07-16 23:31:18 +00:00
Isis Lovecruft
ae0b48b0cd
Merge branch 'release/1.0.0-pre.4' 2020-07-16 23:31:08 +00:00
Isis Lovecruft
5f22d899a0
Bump ed25519-dalek version to 1.0.0-pre.4. 2020-07-16 23:25:09 +00:00
Isis Lovecruft
5458ebef88
Fix no_std issue with new error types. 2020-07-16 23:18:00 +00:00
Isis Lovecruft
d3a5b3bd81
Remove unsafe trait impls. 2020-07-16 23:02:27 +00:00
Isis Lovecruft
7243d7151d
Fix handling of external error types. 2020-07-16 22:19:40 +00:00
Isis Lovecruft
69004599c5
Fix misnamed error type. 2020-07-16 21:49:14 +00:00
Isis Lovecruft
b84f1df47b
Merge branch 'fix/ed25519ph-context' into develop 2020-07-15 17:44:54 +00:00
Isis Lovecruft
b8f36d48d8
Fix proc_macro crate name resolution for serde integration tests. 2020-07-15 17:39:23 +00:00
Isis Lovecruft
e7a88c2c7f
Try compiling tests using serde_crate instead. 2020-07-14 23:58:35 +00:00
Isis Lovecruft
980ed6445f
Add missing toml dev-dependency. 2020-07-14 22:23:31 +00:00
Isis Lovecruft
97787d3716
Remove impl of std::error::Error for SignatureError.
We're now aliasing SignatureError to the error type from the signature
crate.
2020-07-14 00:37:56 +00:00
Isis Lovecruft
989c5e4c18
Fix ed25519ph context length error handling in sign_prehashed().
RFC8032 specifies that the context cannot be greater than 255 octets,
but in the previous implementation in ed25519-dalek, this error would
only be caught by a debug_assert.  This changes the sign_prehashed()
function to return a Result so that the error can be handled at
runtime and the library no longer allows misuse by creating signatures
that other libraries cannot handle.
2020-07-14 00:25:40 +00:00
isis agora lovecruft
33bb760ea8
Merge pull request #134 from isislovecruft/fix/signature-error
Impl std::error::Error for SignatureError.
2020-07-13 23:40:12 +00:00
Isis Lovecruft
f1d8576f12
Impl std::error::Error for SignatureError. 2020-07-13 23:19:55 +00:00
Isis Lovecruft
3a9435df94
Fixup serde and ed25519 trait errors in tests/benches. 2020-07-13 23:16:30 +00:00
Isis Lovecruft
84047448da
Merge remote-tracking branch 'tarcieri/ed25519-crate' into develop 2020-07-13 23:00:23 +00:00
isis agora lovecruft
5038fcf50a
Merge pull request #308 from isislovecruft/fix/pippenger-typo
Fix typo of Pippenger's name.
2020-07-01 01:14:10 +00:00
isis agora lovecruft
8ebbbe5f5b
Merge pull request #127 from huitseeker/update-merlin
Updates the merlin dependency to ^2 and the correct repo
2020-06-30 22:58:39 +00:00
isis agora lovecruft
005fc35f52
Merge pull request #116 from NikVolf/nv-fix-alloc
Fix alloc feature compilation
2020-06-30 22:51:07 +00:00
Isis Lovecruft
c5386c0df9
Merge branch 'master' into develop 2020-06-30 22:44:29 +00:00
Isis Lovecruft
3ffa9ff530
Merge remote-tracking branch 'dalek/master' 2020-06-30 22:43:56 +00:00
isis agora lovecruft
db004cbd41
Merge pull request #119 from phayes/master
Removing double 'does'
2020-06-30 22:43:28 +00:00
Isis Lovecruft
9e247c493c
Add additional tests for keypair (de)serialisation. 2020-06-30 22:40:24 +00:00
isis agora lovecruft
6dfcc4ba27
Merge pull request #112 from jamesmunns/improve-deserialize
Add additional visitor methods for deserialization
2020-06-30 22:05:16 +00:00
François Garillot
6afd8ff212
Update sha2, digest to 0.9 2020-06-15 07:16:04 -04:00
Henry de Valence
3cc13a7bec Merge branch 'master' into develop 2020-05-29 12:42:49 -07:00
Henry de Valence
c4824e1384 Merge branch 'release/2.1.0' 2020-05-29 12:40:24 -07:00
Henry de Valence
3fc47ef867 Bump version to 2.1.0 2020-05-29 12:39:39 -07:00
Henry de Valence
f04b83055c Merge branch 'master' into develop 2020-05-29 12:36:16 -07:00
Henry de Valence
e342f25c4e
Merge pull request #325 from rubdos/const_fn_for_scalar_from_bits
Make Scalar::from_bits a const fn.
2020-05-29 12:26:31 -07:00
Ruben De Smet
3a61a0b70c Make Scalar::from_bits a const fn.
const_fn is stable since Rust 1.31
(https://github.com/rust-lang/rust/pull/54835) and enables calling
`Scalar::from_bits(..)` from other const fn contexts, potentially
saving some overhead here and there.

Especially useful in contexts where constants are being built from a bit
pattern.
2020-05-28 10:28:28 +02:00
Tony Arcieri
6e0667d429 Use ed25519 + signature interop crates
The `signature` crate provides `Signer` and `Verifier` traits generic
over signature types:

https://github.com/RustCrypto/traits/tree/master/signature

There's presently an open call to stabilize the parts of its API needed
by Ed25519 signatures and release a 1.0 version:

https://github.com/RustCrypto/traits/issues/78

The `ed25519` crate, based on the `signature` crate, provides an
`ed25519::Signature` type which can be shared across multiple Ed25519
crates (e.g. it is also used by the `yubihsm` crate):

https://github.com/RustCrypto/signatures/tree/master/ed25519

This commit integrates the `ed25519::Signature` type, and changes the
existing `sign` and `verify` methods (where applicable) to use the
`Signer` and `Verifier` traits from the `signature` crate. Additionally,
it replaces `SignatureError` with the `signature` crate's error type.

This has the drawback of requiring the `Signer` and/or `Verifier` traits
are in scope in order to create and/or verify signatures, but with the
benefit of supporting interoperability with other Ed25519 crates which
also make use of these traits.
2020-04-20 09:15:10 -07:00
François Garillot
aa38c6419d
Updates the merlin dependency to ^2 and the correct repo
This fixes the "batch" feature, see #126.
2020-04-16 20:48:49 -07:00
gedigi
c9fe6c5533 implemented Zeroize for CompressedRistretto and RistrettoPoint 2020-03-19 14:16:06 -07:00
Henry de Valence
5115951681
Merge pull request #55 from huitseeker/bump-criterion
Bump criterion version
2020-03-06 09:10:35 -08:00
François Garillot
be420d4ffc
Bump criterion version 2020-03-04 22:35:33 -05:00