isis agora lovecruft
95db7d8eae
Merge pull request #153 from huitseeker/non_repudiation
...
[test-only] Add test showing non-repudiation for verify, verify_strict
2020-10-27 23:59:26 +00:00
François Garillot
8aa1458941
Implements an Elligator2 map for Curve25519
...
This implementation:
- is agnostic on the hash used to pick a field element, even though SHA512 is commonly used,
- follows https://tools.ietf.org/id/draft-irtf-cfrg-hash-to-curve-10.html closely
- tests the outputs of the function using libsignal's implementation.
2020-10-21 17:38:22 -04:00
Stephane Raux
608f8cd594
Make crate feature alloc work with stable Rust
...
`println!` was removed in the test as the corresponding test for `u32` does not have it.
2020-10-20 18:15:00 -07:00
François Garillot
da6c7e114f
[test-only] Add test showing the non-repudiation property of the signature verifications used in PublicKey::verify and PublicKey::verify_strict.
...
This PR is a follow-up of #98 , which aims to demonstrate the issue brought by small-order public keys. It shows an example of crafting a (public_key, signature) that verifies against two distinct messages using `verify`, but fails using `verify_strict`.
This has consequences on the possibility to repudiate a signed contract of blockchain transactions.
For more details, see:
https://eprint.iacr.org/2020/1244
Joint work with @kchalkias @valerini
2020-10-14 17:28:51 -04:00
Henry de Valence
a787300ba1
Merge pull request #334 from MarkusZoppelt/fix-packed_simd-AMD
...
bumped packed_simd to 0.3.4
2020-09-30 12:52:15 -07:00
Henry de Valence
45f3f53351
Add link to Cargo.toml with explanation of packed_simd renaming
2020-09-30 12:01:43 -07:00
Markus Zoppelt
f27923bf8c
adjusted dependency entry like to pick up latest pick up the latest packed_simd crate under an alternative name.
...
see also: https://github.com/rust-lang/packed_simd/issues/303#issuecomment-701361161
2020-09-30 15:17:18 +02:00
Markus Zoppelt
c2e394dd04
bumped packed_simd to 0.3.4. resolves #333
2020-09-30 12:59:10 +02:00
Cheng XU
6ce6519287
fix serde in no_std
2020-09-21 19:16:01 -07:00
Isis Lovecruft
91234fcdc8
Merge branch 'master' into develop
2020-09-22 02:01:10 +00:00
Isis Lovecruft
925eb9ea56
Merge branch 'release/1.0.1'
2020-09-22 02:00:50 +00:00
Isis Lovecruft
1042cb60a0
Bump ed25519-dalek version to 1.0.1.
2020-09-22 01:56:35 +00:00
Isis Lovecruft
8c15bce61d
Actually, we use unsafe{} in one test.
2020-09-22 01:54:44 +00:00
isis agora lovecruft
97c22f2d07
Merge pull request #146 from xu-cheng/serde2
...
Fix serde implementation for serde_json
2020-09-22 01:49:58 +00:00
isis agora lovecruft
a9ebf7f53e
Merge pull request #148 from isislovecruft/feature/forbid-unsafe
...
Add #![forbid(unsafe_code)].
2020-09-22 01:39:51 +00:00
isis agora lovecruft
1335f3a859
Merge pull request #147 from isislovecruft/fix/deterministic-batch-malleability
...
batch verification malleability issue when used with fully deterministic nonce generation
2020-09-22 01:38:22 +00:00
Isis Lovecruft
d6ff6de2cf
Add #![forbid(unsafe_code)].
...
CLOSES https://github.com/dalek-cryptography/ed25519-dalek/issues/144
2020-09-22 01:36:49 +00:00
Cheng XU
69eccda444
Fix serde implementation for serde_json
...
We use the [serde_bytes](https://github.com/serde-rs/bytes ) crate for
serialization implementations, which simplifies codes and fixes issues
for serde_json.
2020-09-21 18:26:59 -07:00
Cheng XU
008c9680f6
Update tests for serde
...
* Upgrade bincode to 1.0
* Add more serde tests including json serialization.
2020-09-21 18:26:59 -07:00
Isis Lovecruft
b5a15bf451
Feature gate key generation on the "rand" dependency.
...
See https://github.com/dalek-cryptography/ed25519-dalek/pull/139 .
2020-09-21 23:53:56 +00:00
Isis Lovecruft
6609642036
Enable rand crate by default.
...
See https://github.com/dalek-cryptography/ed25519-dalek/pull/139 .
2020-09-21 23:53:29 +00:00
isis agora lovecruft
7155c07afa
Merge pull request #139 from garbageslam/fixup_rand_usage
...
Make `use rand::...` gated on `cfg(feature = "rand")`
2020-09-21 23:47:26 +00:00
isis agora lovecruft
036c18a01b
Merge pull request #145 from isislovecruft/fix/rand-nightly-breakage
...
Workaround for rand crate "nightly" feature breakage.
2020-09-21 23:35:21 +00:00
Isis Lovecruft
5d7bc29ba2
Workaround for rand crate "nightly" feature breakage.
...
Cf. https://github.com/rust-random/rand/issues/1047
2020-09-21 23:25:15 +00:00
Isis Lovecruft
a02190adf3
Document that we include the message lengths in the transcript.
2020-09-21 22:10:03 +00:00
Isis Lovecruft
57a5473cb0
Fix and document malleability issue in deterministic batch_verify().
...
Thank you to @real_or_random and @jonasnick for initially pointing it
out and ensuing discussion.
2020-09-21 22:09:27 +00:00
isis agora lovecruft
bd572dcd52
Merge pull request #142 from 35359595/master
...
check_scalar bug fix for legacy_compatibility feature
2020-09-10 01:36:55 +00:00
Henry de Valence
7ef5cc7c32
Merge branch 'master' into develop
2020-08-31 12:59:05 -07:00
Henry de Valence
0985e1babf
Merge branch 'release/1.1'
2020-08-31 12:58:49 -07:00
Henry de Valence
e8615a9326
bump version to 1.1.0 and update CHANGELOG
2020-08-31 12:56:34 -07:00
Henry de Valence
1ede5270e5
Merge pull request #63 from jack-michaud/derive-partialeq
...
Add PartialEq derive to PublicKey
2020-08-31 12:52:53 -07:00
Jack Michaud
3c09664112
Feedback from @hdevalence - Added derive for Eq and Hash
2020-08-31 12:15:43 -07:00
Jack Michaud
48df927d7b
Add PartialEq derive to PublicKey
...
Derives from the PartialEq impl for MontgomeryPoint
2020-08-30 17:41:54 -07:00
Ivan Temchenko
da959c041d
check_scalar bug fix for legacy_compatibility feature
2020-08-24 16:33:04 +02:00
Isis Lovecruft
5fe7c88303
Merge branch 'master' into develop
2020-08-20 22:54:10 +00:00
Isis Lovecruft
75a199e5a0
Merge branch 'release/1.0.0'
2020-08-20 22:54:01 +00:00
Isis Lovecruft
952bdd062f
Release ed25519-dalek version 1.0.0.
2020-08-20 22:46:58 +00:00
Isis Lovecruft
1c97dac4dc
Update to curve25519-dalek version 3.
2020-08-20 21:19:21 +00:00
Henry de Valence
fd12c03b86
Merge branch 'master' into develop
2020-08-17 20:38:34 -07:00
Henry de Valence
d438d486fd
Merge branch 'release/1.0.1'
2020-08-17 20:38:25 -07:00
Henry de Valence
af6d5bd5bf
Bump version to 1.0.1
2020-08-17 20:37:20 -07:00
Henry de Valence
b8e6fb7ee1
Merge pull request #62 from dalek-cryptography/curve-3
...
Update curve25519-dalek to version 3.0.0.
2020-08-17 20:35:31 -07:00
Henry de Valence
2408e6b179
Update curve25519-dalek to version 3.0.0.
...
This allows unifying dependencies with other crates using the `3.x` series of
the curve library. It is a semver patch-level change, because the x25519-dalek
API does not expose any details of the underlying curve implementation.
2020-08-17 20:17:57 -07:00
Henry de Valence
1781dd3d05
Merge branch 'master' into develop
2020-08-17 19:45:27 -07:00
Henry de Valence
bddb3c7777
Merge branch 'release/1.0.0'
2020-08-17 19:45:17 -07:00
Henry de Valence
1b01d597ca
Bump version to 1.0.0 and update CHANGELOG.md
2020-08-17 19:43:22 -07:00
Henry de Valence
122d4bb114
Merge pull request #61 from dalek-cryptography/clarify-ephemeral-static
...
Clarify Ephemeral/StaticSecret docs.
2020-08-17 19:33:45 -07:00
Henry de Valence
fb92cd82da
Clarify Ephemeral/StaticSecret docs.
...
Also does a pass through the docs converting `TypeNames` to Rustdoc links, and
making sure that all the items have consistent summaries.
Closes #58
Closes $56
2020-08-17 19:25:12 -07:00
Henry de Valence
736f8dd313
Merge pull request #60 from dalek-cryptography/remove-rand-os-example
...
Remove rand os example
2020-08-17 19:22:21 -07:00
Henry de Valence
5d245dcefa
Merge pull request #43 from peat/master
...
Add .to_bytes() to PublicKey, SharedSecret
2020-08-17 18:55:18 -07:00