Commit graph

1399 commits

Author SHA1 Message Date
Isis Lovecruft
8500cd3c2f
Merge remote-tracking branch 'stephaneyfx/alloc-with-stable-rust' into develop 2021-01-07 23:24:57 +00:00
Isis Lovecruft
0f07443c2d
Bump curve25519-dalek to 2.1.1. 2021-01-07 22:21:37 +00:00
Isis Lovecruft
bb889e478d
Remove deprecated feature flags from .travis.yml.
(cherry picked from commit 7e320cd1d9)
Signed-off-by: Isis Lovecruft <isis@patternsinthevoid.net>
2021-01-07 22:12:24 +00:00
Isis Lovecruft
d00d4a5a9a
Fix CHANGELOG so that we can note backported patches.
(cherry picked from commit 64099e9adf)
Signed-off-by: Isis Lovecruft <isis@patternsinthevoid.net>
2021-01-07 22:12:12 +00:00
Henry de Valence
e6d8afc352
Add link to Cargo.toml with explanation of packed_simd renaming
(cherry picked from commit 45f3f53351)
Signed-off-by: Isis Lovecruft <isis@patternsinthevoid.net>
2021-01-07 22:10:10 +00:00
Markus Zoppelt
dd71df6ea0
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

(cherry picked from commit f27923bf8c)
Signed-off-by: Isis Lovecruft <isis@patternsinthevoid.net>
2021-01-07 22:09:49 +00:00
Markus Zoppelt
6ffc8ddefd
bumped packed_simd to 0.3.4. resolves #333
(cherry picked from commit c2e394dd04)
Signed-off-by: Isis Lovecruft <isis@patternsinthevoid.net>
2021-01-07 22:09:26 +00:00
Isis Lovecruft
2e543e73d9
Merge branch 'master' into develop 2021-01-07 22:05:35 +00:00
Isis Lovecruft
3b44ed82dd
Merge branch 'release/3.0.1' 2021-01-07 22:05:26 +00:00
Isis Lovecruft
7e320cd1d9
Remove deprecated feature flags from .travis.yml. 2021-01-07 21:51:21 +00:00
Isis Lovecruft
64099e9adf
Fix CHANGELOG so that we can note backported patches. 2021-01-07 21:31:57 +00:00
Isis Lovecruft
e47a180991
Bump curve25519-dalek to 3.0.1. 2021-01-07 21:29:17 +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
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
Henry de Valence
fb01f65761 Merge branch 'master' into develop 2020-08-17 18:22:21 -07:00
Henry de Valence
b307c155c9 Merge branch 'release/3.0.0' 2020-08-17 18:21:42 -07:00
Henry de Valence
6d96eb7796 Bump version to 3.0.0. 2020-08-17 18:20:26 -07:00
Henry de Valence
c68b30fe13
Merge pull request #330 from isislovecruft/fix/move-coc
Move CoC section from CONTRIBUTING.md to new file.
2020-08-17 18:12:00 -07:00
Henry de Valence
2ee61938ee
Merge pull request #327 from huitseeker/digests-0.9
Update sha2, digest to 0.9
2020-08-17 18:11:32 -07:00
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
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
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
gedigi
c9fe6c5533 implemented Zeroize for CompressedRistretto and RistrettoPoint 2020-03-19 14:16:06 -07:00
Henry de Valence
9753fe4528
Merge pull request #316 from huitseeker/bump-criterion
Bump criterion version
2020-03-02 09:50:11 -08:00
Henry de Valence
59b1a42bed
Merge pull request #318 from Fiono11/new_branch
Derive of Hash trait to CompressedRistretto, CompressedEdwardsY, MontgomeryPoint, and Scalar
2020-03-02 09:39:51 -08:00
Rui Morais
6a8e466063 add derive Hash to Scalar, MontgomeryPoint and CompressedEdwardsY 2020-02-25 22:39:19 +00:00
Rui Morais
d57fb6caeb Derive of Hash trait to CompressedRistretto 2020-02-25 18:16:06 +00:00
François Garillot
7b1363a964
Bump criterion version 2020-02-24 14:24:49 -05:00
Isis Lovecruft
dc7e411d9a
Merge branch 'main' into develop 2020-02-07 11:33:45 +00:00
Isis Lovecruft
eb827d5779
Pin zeroize dependency to =1.3.0 to maintain MSRV 1.41. 2020-02-07 11:31:41 +00:00
Isis Lovecruft
4d0af53ccf
Merge branch 'feature/github-ci-nightlies' into main 2020-02-07 11:28:00 +00:00
Isis Lovecruft
ee0c6baa45
Add Github action to test with nightly compilers. 2021-09-23 21:13:26 +00:00
Isis Lovecruft
e82910d215
Add test for basepoint table multiplication by unreduced scalar. 2020-01-07 08:06:27 +00:00
Isis Lovecruft
1f8a19a753
Fix an attempted overflow on absolute value computation for radix-256 tables.
Found by the fuzzer in 4f5d2d4.
2020-01-07 08:04:46 +00:00
Isis Lovecruft
ca1f730790
Fix debug_assert! range in Scalar::to_radix_2w_size_hint(). 2020-01-03 23:56:30 +00:00
Isis Lovecruft
c01bd780dc
Implement radix-32 precomputed scalar multiplication tables. 2019-12-31 02:26:03 +00:00
Isis Lovecruft
cfbcb6ca61
Implement conversions between basepoint table sizes.
This is useful for programs/protocol which can do some heuristics or
learning-based approach towards optimising the table size based on the number of
uses of e.g. a public key, the second basepoint in a Pedersen commitment, etc.,
i.e. the first time a public key is used to verify a signature, the usual
variable-time basepoint multiscalar multiplication is used, however after 1000
verifications, the table size is upgraded, and again after 10000 verifications,
etc.
2019-12-31 02:26:03 +00:00
Isis Lovecruft
8a9e09ba34
Implement larger sizes of basepoint tables.
This implements a macro for implementing the BasepointTable trait, and
uses the macro to create basepoint table types. The default table
still uses radix-16 representation and is ~30KB in size.  The new
table types, and their memory usage and additions required per
basepoint multiplication are:

 * `EdwardsBasepointTableRadix64`: ~120KB, 43 additions
 * `EdwardsBasepointTableRadix128`: ~240KB, 37 additions
 * `EdwardsBasepointTableRadix256`: ~480KB, 32 additions
2019-12-31 02:26:03 +00:00
Isis Lovecruft
383e65f6bd
Add a trait for implementing a basepoint table. 2019-12-27 12:54:52 +00:00
Isis Lovecruft
4f29935c2c
Create macro for generating different sized LookupTable<T>s. 2019-12-27 12:49:32 +00:00