Tony Arcieri
081f632d91
Implement simplified backend selection ( #428 )
...
As proposed in #414 , this commit changes the backend selection approach,
introspecting `target_pointer_width` to select `u32_backend` vs
`u64_backend` (or `fiat_u32_backend`/`fiat_u64_backend` if the
`fiat_backend` feature is enabled).
This helps eliminate the use of non-additive features, and also the
rather confusing errors that happen if multiple backends are selected
(i.e. thousands of lines of rustc errors).
The selection logic checks if `target_pointer_width = "64"` and uses the
64-bit backend, or falls back to the 32-bit backend otherwise. This
means the crate will always have a valid backend regardless of the
pointer width, although there may be odd edge cases for exotic platforms
which would optimally use the 64-bit backend but have a non-"64" target
pointer width for whatever reason. We can handle those cases as they
come up.
2022-11-13 12:17:42 -05:00
pinkforest(she/her)
977eb0d3b7
Bump criterion to 0.4.0 ( #432 )
2022-11-13 01:36:46 -05:00
Michael Rosenberg
e85e3c047b
Merge pull request #429 from pinkforest/docs/readme/de-dup
...
Use #[include_str] for top-level docs
2022-11-13 01:03:37 -05:00
pinkforest
62fe24e022
Include README.md into the crate Documentation
...
As proposed in #426 this commit changes to include README.md into
the crate documentation instead of maintaining a carbon copy in
the code.
This helps to keep the documentation in a single place without
duplicating the documentation in multiple places leading to less
errors and out of date documentation.
2022-11-11 22:36:57 +11:00
Michael Rosenberg
90292dccf8
Relaxed zeroize dependency
2022-11-10 03:44:26 -05:00
Thomas Pornin
d687cc8f82
Fix double-and-compress on Ristretto identity (issue #398 ). ( #399 )
2022-11-05 11:35:30 -04:00
Michael Rosenberg
0d75725da3
Merge pull request #424 from rozbb/rustfmt
...
Did a full formatting pass on the crate. Read the comments in the referenced for
steps to verify that the PR made no semantic changes to the code. Huge credit
goes to @robjtede for this work.
2022-11-04 03:03:32 -04:00
Michael Rosenberg
d2bf310330
cargo fmt
2022-10-28 17:00:24 -04:00
Michael Rosenberg
a959787c2e
Added more #[rusfmt::skip]
2022-10-28 16:58:40 -04:00
Michael Rosenberg
95b368a431
Whitespace formatting fixes on the [rustfmt::skip] functions
2022-10-28 16:32:45 -04:00
Michael Rosenberg
6d906bb70c
Added #[rustfmt::skip] where necessary
2022-10-28 13:51:20 -04:00
Michael Rosenberg
a32f56ba36
Undid the bad reformatting job from 5758b8c
2022-10-28 13:22:49 -04:00
Michael Rosenberg
8fa201639a
Fix AVX2 and AVX-512 builds ( #419 )
...
Build was broken by 5758b8c .
This adds a regression test to CI so it doesn't happen again
2022-10-28 13:10:44 -04:00
Michael Rosenberg
3a94bf8a8e
Cherry-picked Github actions from 1f9e527
2022-10-28 12:15:50 -04:00
Anthony Ramine
1f9e527597
Update GitHub actions ( #422 )
2022-10-28 11:50:24 -04:00
Michael Rosenberg
5fe0e969bf
Enable CI for arbitrary PRs
2022-10-22 13:28:00 -04:00
Hugo Tunius
c000957bae
Remove byteorder ( #418 )
...
Instead of having a dependency on `byteorder`, use methods from the
standard library(`{to,from}_le_bytes`).
2022-10-22 03:42:23 -04:00
Michael Rosenberg
3246aa7edc
Noted edition change in changelog
2022-10-18 13:59:35 -04:00
Michael Rosenberg
5758b8cce1
Updated to edition 2021 ( #413 )
2022-10-18 13:45:59 -04:00
Michael Rosenberg
51572dae8d
Relax zeroize dependency and bump MSRV ( #412 )
2022-10-17 15:08:34 -04:00
Michael Rosenberg
7529d65506
Fixed installation section in README; accidentally deleted this earlier
2022-10-16 19:38:36 -04:00
Michael Rosenberg
8319adbff4
Bumped MSRV to 1.56.1 and added some documentation about semver ( #218 )
...
Also fixed benchmark build
2022-10-16 18:51:26 -04:00
Alex Xiong
9638ab40a5
Made ExpandedSecretKey private to avoid signing key oracle ( #205 )
...
This fix eliminates a scenario where a user misuses the `ExpandedSecretKey` API
in a way that leaks the user's secret key. In short, if a user sends
`ExpandedSecretKey::sign(sk, msg, pk1)` followed by
`ExpandedSecretKey::sign(sk, msg, pk2)`, where `pk1 != pk2`, a passive
adversary [can easily][0] derive `sk`. To mitigate this, we remove the API
entirely.
[0]: https://github.com/MystenLabs/ed25519-unsafe-libs
2022-10-15 15:04:03 -04:00
Isis Lovecruft
c3ed99bf93
Bump curve25519-dalek version to 4.0.0-pre.2.
2022-02-16 21:26:01 +00:00
Isis Lovecruft
f78215308a
Merge branch 'develop' into release/4.0
2022-02-16 20:57:44 +00:00
Isis Lovecruft
8abb22bcaf
Merge branch 'main' into develop
2022-02-16 20:55:36 +00:00
Isis Lovecruft
0d49dfacf6
Merge remote-tracking branch 'dalek/main' into main
2022-02-16 20:55:08 +00:00
Isis Lovecruft
f7381ac64c
Pin zeroize dependency to >=1, <1.4 to relax bounds for downstreams.
...
As suggested by @tarcieri in #362 . See also commit b6a7406 .
2022-02-16 20:52:33 +00:00
isis agora lovecruft
6820effb44
Merge pull request #381 from bitmold/patch-1
...
Update README.md
2022-02-01 23:58:18 +00:00
Isis Lovecruft
2ef1429665
Merge branch 'feature/digest-sha2-v0.10' into release/4.0
2022-02-01 23:53:44 +00:00
Isis Lovecruft
f9f0384aee
Bump sha2 and digest dependencies to 0.10.
2022-02-01 23:48:11 +00:00
Isis Lovecruft
71acc842c3
Merge branch 'develop' into release/4.0
2022-02-01 23:30:54 +00:00
Isis Lovecruft
bf95fcba24
Merge branch 'main' into develop
2022-02-01 23:30:13 +00:00
Isis Lovecruft
b6a7406c73
Pin zeroize dependency to =1.3.0 to maintain MSRV 1.41.
2022-02-01 23:29:41 +00:00
Isis Lovecruft
b131092c9b
Merge branch 'develop' into release/4.0
2022-02-01 23:28:22 +00:00
bitmold
b06df0376c
Update README.md
...
master -> main
2022-02-01 02:15:31 -05:00
Isis Lovecruft
3fc0108d7d
Merge branch 'release/2.0.0-pre.1' into release/2.0
2021-09-23 20:42:19 +00:00
Isis Lovecruft
ab38e36a4c
Update CHANGELOG.
2021-09-23 19:53:53 +00:00
Isis Lovecruft
73d4c2fe93
Update x25519-dalek version to 2.0.0-pre.1.
2021-09-23 19:53:44 +00:00
Isis Lovecruft
20d276ac14
Merge branch 'fix/msrv-1.51' into release/2.0
2021-09-23 19:15:51 +00:00
Isis Lovecruft
164563d79e
Update MSRV documentation in README.
2021-09-23 19:09:28 +00:00
Isis Lovecruft
841b3a65de
Relax version constraints for zeroize dependency.
2021-09-23 19:08:11 +00:00
Isis Lovecruft
8f3e4b1960
Bump MSRV to 1.51 for zeroize dependency.
2021-09-23 19:07:44 +00:00
Isis Lovecruft
9d7bccbd8e
Bump x25519-dalek version to 2.0.0-pre.0.
2021-09-15 01:07:48 +00:00
Isis Lovecruft
26c168b719
Merge branch 'release/2.0' into release/2.0.0-pre.0
2021-09-15 00:46:08 +00:00
Isis Lovecruft
db1640aa99
Merge branch 'develop' into release/2.0
2021-09-15 00:45:22 +00:00
Isis Lovecruft
8224a21489
Also run Github actions CI on PRs for releases.
2021-09-15 00:43:59 +00:00
Isis Lovecruft
6be61f178b
Remove unnecessary rand_core getrandom feature.
2021-09-15 00:16:58 +00:00
Isis Lovecruft
2bc5763103
Update CHANGELOG for 2.0.0-pre.0.
2021-09-15 00:13:09 +00:00
isis agora lovecruft
e870a3d8d6
Merge pull request #64 from PaulGrandperrin/patch-1
...
Update rand_core to 0.6
2021-09-15 00:06:49 +00:00