Commit graph

882 commits

Author SHA1 Message Date
Michael Rosenberg
a35ca1e9cf Added cfg_attr everywhere possible, and simplified cfg over std/alloc 2022-11-26 05:53:28 -05:00
pinkforest
ad7c755f49 Documentation migrate to docs.rs hosted
This change migrates all the documentation from dalek.rs
to docs.rs hosted and fixed the backend documentation
generation that was broken.
2022-11-26 11:26:25 +11:00
Michael Rosenberg
969940e954
Wibble 2022-11-24 02:37:07 -05:00
Michael Rosenberg
a743ea5348
Fixed doc warnings 2022-11-24 02:37:05 -05:00
Michael Rosenberg
6eafb1ebda
Deprecate EdwardsPoint::hash_from_bytes (#438)
* Deprecated `EdwardsPoint::hash_from_bytes` and renamed to
  `EdwardsPoint::nonspec_map_to_curve`

* Added KAT test vectors for `RistrettoPoint::from_uniform_bytes`
2022-11-24 01:45:03 -05:00
Tony Arcieri
f88cf6836b
Use include_str! for .md inclusion in rustdoc (#434)
Previously a now-removed nightly-only feature was used, but now that
it's stable, `include_str!` can be used for all of these cases.
2022-11-14 00:22:50 -05:00
Tony Arcieri
d05afa02a3
Add alloc feature gates to simd tests that need it (#433) 2022-11-14 00:11:23 -05:00
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
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
Thomas Pornin
d687cc8f82
Fix double-and-compress on Ristretto identity (issue #398). (#399) 2022-11-05 11:35:30 -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
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
5758b8cce1
Updated to edition 2021 (#413) 2022-10-18 13:45:59 -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
f9f0384aee
Bump sha2 and digest dependencies to 0.10. 2022-02-01 23:48:11 +00:00
Isis Lovecruft
df4e2fa129
Bump alpha curve25519-dalek version to 4.0.0-pre.1. 2021-08-17 00:40:38 +00:00
Isis Lovecruft
9f80197f05
Merge branch 'develop' into release/4.0 2021-08-04 01:09:38 +00:00
Isis Lovecruft
09a726cc8c
Merge branch 'develop' into release/3.2 2021-08-04 00:26:47 +00:00
Isis Lovecruft
2d40d2d923
Merge branch 'main' into develop 2021-08-04 00:24:45 +00:00
Isis Lovecruft
90aab8423c
Update CHANGELOG and bump version to 3.1.2. 2021-08-03 23:33:33 +00:00
Isis Lovecruft
74210d28fc
Update copyright years. 2021-08-03 23:13:45 +00:00
Isis Lovecruft
52986bc3ec
Revert "Update copyright years."
This reverts commit 1491f0db36.

This is due to code which was erroneously deleted during the commit,
due to being based off the wrong version, see
https://github.com/dalek-cryptography/curve25519-dalek/pull/361.
2021-08-03 23:10:35 +00:00
Isis Lovecruft
396d26e463
Merge branch 'develop' into release/4.0 2021-08-03 23:06:58 +00:00
Isis Lovecruft
a7f4f0ec14
Merge branch 'develop' into release/3.2 2021-08-03 23:04:34 +00:00
Isis Lovecruft
9f93a5c0f5
Merge branch 'main' into develop 2021-08-03 22:53:58 +00:00
Isis Lovecruft
b9710d59f2
Minor documentation fixes. 2021-08-03 22:49:09 +00:00
Isis Lovecruft
f8cb7197f9
Fix error introduced in 59a8616 merge. 2021-07-20 03:22:27 +00:00
Isis Lovecruft
fccc5d54f8
Bump version for html_root_url. 2021-07-20 02:56:44 +00:00
Isis Lovecruft
59a8616e7a Release curve25519-dalek version 3.0.3.
-----BEGIN PGP SIGNATURE-----
 
 iQB1BAAWCAAdFiEEOy1KvpA7Nj5/r96Eq0ExNTPo6BIFAmD2LGkACgkQq0ExNTPo6BJcpQD9HeDu
 PNtHRcAA6/OI1rko+PNScTUa4wRFJ9nIov8lXJwA/i/c2k0MX3Gms55wjWhdaTrFgsC+m+6F/Cmq
 xChOaPUN
 =L+SN
 -----END PGP SIGNATURE-----
 
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQB1BAAWCAAdFiEEOy1KvpA7Nj5/r96Eq0ExNTPo6BIFAmD2OpIACgkQq0ExNTPo6BLEHwEAk4Ax
 pUxJ1axcVriU3CrQANmvfJafSUU1HvUF/15HA70A/3uVJUzT5vDdb0CKNhFtar3as/zZw+pimcXb
 KvnrB54G
 =6fZN
 -----END PGP SIGNATURE-----
 

Merge tag '3.0.3' into release/3.1.1

Release curve25519-dalek version 3.0.3.
2021-07-20 02:53:03 +00:00
Isis Lovecruft
6ea874cb31
Bump curve25519-dalek version to 3.0.3. 2021-07-13 06:44:49 +00:00
Isis Lovecruft
dc87de0073 Release curve25519-dalek version 2.1.3.
-----BEGIN PGP SIGNATURE-----
 
 iQB1BAAWCAAdFiEEOy1KvpA7Nj5/r96Eq0ExNTPo6BIFAmDtLDQACgkQq0ExNTPo6BJG2QEAqYkN
 LL4I8XGFs7HiaUmafT5ROWh3J+tl6+1F0dxDfAwA/2N7TFpuBr9Ij9xL9Z1QOxO5Tj3A2pcTsbg3
 f4i/D30B
 =MsLB
 -----END PGP SIGNATURE-----
 
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQB1BAAWCAAdFiEEOy1KvpA7Nj5/r96Eq0ExNTPo6BIFAmDtMT4ACgkQq0ExNTPo6BJoJQD+PHTb
 ol7DCvSX4zr5WP38vrf5kvqg++90SGR0b6rZKxMBAMi1gpV0kaVNsY31bJSVBD89Qi+jcZXcxqkI
 PwVovFAI
 =U/np
 -----END PGP SIGNATURE-----
 

Merge tag '2.1.3' into HEAD

Release curve25519-dalek version 2.1.3.
2021-07-13 06:22:52 +00:00
Isis Lovecruft
ff25109f25
Bump curve25519-dalek version to 2.1.3. 2021-07-13 05:57:44 +00:00
Isis Lovecruft
43e454ce1d
Fix documentation build errors due to doc(inlude) on nightly. 2021-07-13 05:40:28 +00:00
Isis Lovecruft
1ee5c4defb
Update CHANGELOG and bump version to 3.2. 2021-07-13 05:32:36 +00:00
Isis Lovecruft
d7c2a1394f
Add another test for equivalence with the Edwards identity. 2021-04-21 00:06:44 +00:00
Isis Lovecruft
0d8f33153c
Implement Identity for MontgomeryPoint.
This can be used in checks for non-contributory behaviour in protocols
where that is a concern.
2021-04-21 00:02:22 +00:00
Isis Lovecruft
9b36bcfc5f
Revert "Maintain legacy 3.x support for lookup tables."
This reverts commit 0da8f08d65.
2021-04-14 02:30:22 +00:00
Isis Lovecruft
53b4ed3098
Update CHANGELOG and README for 4.x alpha. 2021-04-14 02:28:21 +00:00
Isis Lovecruft
2ea17d554a
Update CHANGELOG and README; bump to 3.1.0. 2021-04-14 01:30:57 +00:00
isis agora lovecruft
5eca140010
Merge pull request #351 from isislovecruft/fix/cleanup-elligator
Trivial cleanups to Elligator2 encoding
2021-04-13 23:31:14 +00:00
isis agora lovecruft
cecc821f40
Merge pull request #342 from huitseeker/fiat4_with_u32
Serial backends w/formally-verified field arithmetic for 32 & 64 bits
2021-04-13 23:23:41 +00:00
Isis Lovecruft
0da8f08d65
Maintain legacy 3.x support for lookup tables. 2021-04-13 22:23:34 +00:00
Isis Lovecruft
ee90202a58
Trivial cleanups to Elligator2 encoding.
cf. https://github.com/dalek-cryptography/curve25519-dalek/pull/336
2021-04-13 00:24:50 +00:00
Isis Lovecruft
cc0c444fae
Merge branch 'feature/dynamic-table-sizes' into develop 2021-03-25 04:34:08 +00:00
Isis Lovecruft
1491f0db36
Update copyright years. 2021-03-25 04:10:55 +00:00