Commit Graph

59 Commits

Author SHA1 Message Date
Tony Arcieri c9eabf70e4 CI: fix security audit (#884)
Busts the cache key so we use a newer version of `cargo-audit`
2025-01-19 14:11:24 -07:00
Richard Barnes 1d3a1d1945 Add support for ML-DSA (#877) 2025-01-19 14:00:26 -07:00
Tony Arcieri 85c984bcc9 slh-dsa: ensure no_std compatibility in CI (#876) 2024-11-12 14:18:20 -07:00
Arthur Gautier c0ab70c4e7 build(deps): bump const-oid from 0.10.0-rc.1 to 0.10.0-rc.1; bump MSRV to 1.81 (#868) 2024-10-02 11:06:46 -06:00
Arthur Gautier 87a6da8435 lms: convert to hybrid-array (#865) 2024-09-30 13:12:00 -06:00
erdnaxe 9d92fd875e slh-dsa: fix --no-default-features tests (#853) 2024-09-04 07:10:42 -06:00
Tony Arcieri 62419f8b10 ml-dsa: initial crate boilerplate (#830) 2024-07-10 20:10:32 -06:00
Tjaden Hess e210572c68 Fully guard alloc tests with feature flags, make KATs no-alloc (#814) 2024-04-15 10:00:32 -06:00
Tony Arcieri f4799f5820 slh-dsa: CI configuration (#813) 2024-04-15 09:28:12 -06:00
Will Song 3e4e1aa270 lms: import into RustCrypto/signatures (#801)
Leighton-Micali Hash-Based Signatures

Co-authored-by: Tjaden Hess <tjade273@gmail.com>
2024-03-06 12:30:50 -07:00
dependabot[bot] ab263a9c43 build(deps): bump actions/cache from 3 to 4 (#797)
Bumps [actions/cache](https://github.com/actions/cache) from 3 to 4.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-22 07:41:03 -07:00
Tony Arcieri 4a94edb56a Bump digest, elliptic-curve, and signature; MSRV 1.72 (#785)
Bumps the following dependencies:
- `digest` v0.11.0-pre.7
- `elliptic-curve` v0.14.0-pre.3
- `signature` v2.3.0-pre.2
2024-01-17 10:07:35 -07:00
Tony Arcieri 4ee30f578e Bump signature to v2.3.0-pre.0; MSRV 1.71 (#765)
For `ecdsa` crate: MSRV is 1.73 due to a bump of `elliptic-curve` to
v0.14.0-pre.0.

This commit begins the next round of breaking changes and bumps all
crates to prerelease versions.

The main change in `signature` is an upgrade of the `digest` crate to
v0.11.0-pre.3, which is what brings the new MSRV 1.71 requirement.
2024-01-09 12:07:49 -07:00
dependabot[bot] 8516671bb5 build(deps): bump actions/checkout from 3 to 4 (#749)
Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-17 08:30:42 -06:00
ashWhiteHat d9c304cf91 ed448: Ed448 Implementation (#727) 2023-10-15 12:47:41 -06:00
dependabot[bot] e2df1ac9c8 build(deps): bump actions/checkout from 3 to 4 (#740)
Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-04 09:56:07 -06:00
Tony Arcieri 6390a548fe ed25519: bump ring-compat to v0.7 (#692) 2023-04-03 09:37:50 -06:00
Dirk Stolle 30fad0c067 Replace unmaintained actions-rs/* actions in CI workflows (#682)
Basically all of the `actions-rs/*` actions are unmaintained. See
<https://github.com/actions-rs/toolchain/issues/216> for more
information. Due to their age they generate several warnings in
CI runs.

To get rid of some of those warnings the occurrences of
`actions-rs/toolchain` are replaced by `dtolnay/rust-toolchain`,
and the occurrences of `actions-rs/cargo` are replaced by direct
invocations of `cargo`.
2023-03-20 19:08:59 -06:00
Tony Arcieri 76c6a1f402 ed25519: bump pkcs8 dependency to v0.10 (#665) 2023-02-28 21:30:34 -07:00
Tony Arcieri 5d18f2a133 dsa: bump pkcs8 dependency to v0.10; MSRV 1.65 (#664) 2023-02-28 20:56:55 -07:00
Tony Arcieri 3d0daf374b ecdsa: bump elliptic-curve to v0.13.0-rc.0; MSRV 1.65 (#660)
Also bumps `der` to v0.7
2023-02-28 13:06:31 -07:00
Tony Arcieri 24d5a9f867 CI: re-enable security audit (#641)
Now that #640 is merged it should work again
2023-01-28 19:54:00 -07:00
Tony Arcieri bd7dfd1e34 rfc6979: decouple from crypto-bigint (#639)
The previous approach complicates supporting ECDSA with `FieldSize`
which is different from `C::Uint::ByteSize`.

The new implementation eliminates `crypto-bigint` as a dependency and
makes the API entirely byte-oriented.

This is a simpler approach which also eliminates some previous trait
bounds on the generic ECDSA implementation.
2023-01-28 17:16:22 -07:00
Tony Arcieri 773e490a18 ecdsa: bump elliptic-curve to v0.13.0-pre; MSRV 1.61 (#631)
Sourced from git
2023-01-22 10:21:14 -07:00
Tony Arcieri a30805e162 ed25519: use namespaced features for serde_bytes; MSRV 1.60 (#628)
Since workspaces have to be bumped to MSRV 1.60 at the same time, this
also bumps the MSRV of other crates in this repo along with bumping
their version numbers to `-pre`.
2023-01-21 12:33:50 -07:00
Tony Arcieri fd1c20d31d security-audit.yml: bump cache and cargo-audit versions 2022-10-17 09:07:10 -06:00
dependabot[bot] c762d8d07e build(deps): bump actions/checkout from 1 to 3 (#557)
Bumps [actions/checkout](https://github.com/actions/checkout) from 1 to 3.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v1...v3)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-17 09:03:39 -06:00
Dirk Stolle f41d2b6eb9 chore: extend Dependabot configuration for GitHub Actions updates (#546) 2022-10-05 17:50:18 -06:00
Tony Arcieri 69662f3e35 ecdsa: use cargo hack in CI to test feature combos (#536)
Uses automatic permutation test rather than hardcoded combinations
2022-09-12 19:49:59 -06:00
Tony Arcieri afb6d7703b ed25519: CI test for build with pem feature alone (#526)
It wasn't tested before. See #524.
2022-09-06 10:20:30 -06:00
aumetra 373e4fe08b dsa: Add initial DSA implementation (#471)
Adds an initial implementation of DSA (see #8)  

The following things work when tested against OpenSSL:

- The generated keys are valid and can be imported and exported from/to their DER/PEM representation
- Signatures generated by this library can be successfully verified
- Signatures can be imported and exported from/into their DER representation
- Signatures generated by OpenSSL can be successfully imported and verified
2022-05-16 11:53:39 -06:00
Tony Arcieri a5bbacd683 ed25519: bump pkcs8 dependency to v0.9 (#473)
Per our SemVer policy, since this is a breaking change to the `pkcs8`
module it also bumps the minor version of this crate (currently to
v1.5.0-pre)

The MSRV with the `pkcs8` feature enabled is now 1.57
2022-05-09 07:38:00 -06:00
Tony Arcieri 392be55fcd Reunify workspace; disable ring-compat doctests (#442)
Reverts the changes from #433 that split the `ed25519` crate out into
its own namespace.

Instead, temporarily disables the `ring-compat` dependency and doctests
in the `ed25519` crate until it's updated to the latest version of the
`signature` crate.

Fixes #440
2022-01-19 06:37:37 -07:00
Tony Arcieri b3e28706bb rfc6979: add CI workflow (#436)
It was previously missing one, and only vicariously tested via the
`ecdsa` crate.
2022-01-18 11:43:30 -07:00
daxpedda 070d328513 Update elliptic-curve and digest (#433)
Updates these dependencies to the following versions:

- `digest` => v0.10
- `elliptic-curve` => v0.12.0-pre.0
2022-01-18 10:49:34 -07:00
Tony Arcieri 62a3f860f8 ecdsa: fix serde feature combos; improve CI (#407)
There are various feature combinations around `serde` which weren't
working.

This commit fixes those combinations, adds TODOs to eventually simplify
the feature combinations so they aren't needed, and adds CI to ensure it
builds with all feature combinations.
2021-11-19 09:07:29 -07:00
Tony Arcieri ddd6fadd9e ecdsa: 2021 edition upgrade (#384)
The `elliptic-curve` crate as well as format parsers including `der`,
`sec1`, and `pkcs8` have all been bumped to the 2021 edition:

https://github.com/RustCrypto/traits/pull/795

This commit updates the `ecdsa` crate to the 2021 edition accordingly.
2021-10-21 14:25:20 -06:00
Tony Arcieri 54925be85d ecdsa: bump der to v0.5.0-pre.1; MSRV 1.55+ (#382) 2021-10-14 17:48:35 -06:00
Tony Arcieri 3297e5577d ed25519: add PKCS#8 support (#381)
Adds an `ed25519::pkcs8::KeypairBytes` type which impls the
`FromPrivateKey`/`ToPrivateKey` traits from the `pkcs8` crate.
2021-10-10 10:01:07 -06:00
Tony Arcieri a578d37e38 Use resolver = "2" in Cargo.toml; MSRV 1.51+ (#377)
The `ed25519` crate was using a number of hacks to retain builds with
its 1.47 MSRV.

Bumping to `resolver = "2"` allows us to get rid of these hacks and
upgrade the dependencies (e.g. `ring-compat` as used in the rustdoc).
2021-10-09 11:49:51 -06:00
Tony Arcieri afdf1938cc ecdsa: MSRV 1.52 (#359)
Introduced in RustCrypto/elliptic-curve#739
2021-09-07 21:26:26 -06:00
Tony Arcieri 5961aaa58d ecdsa: switch from ScalarBytes<C> to ScalarCore<C> (#356)
Corresponding changes for RustCrypto/traits#732
2021-09-03 13:39:51 -06:00
Tony Arcieri 30fd323867 ed25519: ignore clippy nit for Signature::to_bytes() (#326)
This crate is 1.0 and fixing this nit would arguably be a breaking
change.

This commit ignores it and adds a TODO to fix it eventually.
2021-07-01 12:09:35 -06:00
Tony Arcieri 78ce5f5c02 ecdsa: bump elliptic-curve crate to v0.10.0-pre; MSRV 1.51+ (#302)
Sourced via git

Also includes bump to `der` crate v0.4.0-pre
2021-06-05 10:31:54 -07:00
Tony Arcieri bcc1910672 ed25519: bump ring-compat to v0.2; MSRV 1.47+ (#289) 2021-04-30 08:27:18 -07:00
Tony Arcieri f1f0e57b05 ecdsa: fix digest+hazmat feature combo (#283)
Also CIs for `arithmetic`+`hazmat` and `digest`+`hazmat` feature combos
2021-04-21 12:35:23 -07:00
Tony Arcieri ef183be169 ecdsa: bump base64ct, elliptic-curve, and pkcs8; MSRV 1.47+ (#262)
This commit upgrades the following dependencies:

- `base64` v1.0
- `elliptic-curve` v0.9.5
- `pkcs8` v0.5.5
2021-03-17 12:12:48 -07:00
Tony Arcieri 3a0cd5b35b ecdsa: PKCS#8 support (#203)
Impls the `FromPrivateKey` and `FromPublicKey` traits from the `pkcs8`
crate.
2020-12-06 06:11:47 -08:00
Tony Arcieri a404debf56 ecdsa: fix 32-bit builds for the dev feature (#177)
They weren't tested before. They are now!
2020-09-28 12:23:16 -07:00
Tony Arcieri 7fa56f960f ed25519: add (doctested!) ed25519-dalek usage example (#167)
Adds a rustdoc example which completely demonstrates how to use code
written generically with `ed25519::Signature` and `signature::{Signer,
Verifier}` with the concrete `ed25519_dalek::{Keypair, PublicKey}`
types.

Unlike the previous example, which hardly showed anything, this commit
also pulls in `ed25519-dalek` as a `[dev-dependency]`, which makes it
possible to actually doctest the example.
2020-09-11 15:20:39 -07:00