Commit Graph

47 Commits

Author SHA1 Message Date
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
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
Tony Arcieri 26b831e0f1 ecdsa: bump ff and group crates to v0.8; MSRV 1.44+ (#156)
Previously `elliptic-curve` was pulling in git releases of these crates.
This commit updates to using the final v0.8 releases.
2020-09-08 19:59:20 -07:00
Tony Arcieri 67585389af ecdsa: rename {Signer, Verifier} => {SigningKey, VerifyKey} (#140)
Should help prevent confusion with `signature::{Signer, Verifier}`.
2020-09-02 10:44:14 -07:00
Tony Arcieri 8d9ca6f4eb .github: update tarpaulin + codecov config (#139)
- Upgrade `cargo-tarpaulin` to `latest`
- Upgrade `codecov-action` to v1.0.13
- Run cargo-tarpaulin with --all-features
2020-09-02 09:49:29 -07:00
Tony Arcieri 9cba7dff2f ecdsa: Verifier facade (gated under verifier feature) (#110)
Adds a `ecdsa::verifier::Verifier` facade which handles parsing of
`PublicKey` and computing digests of messages, ala the `Signer` facade
added in #109.

The implementation is generic over the elliptic curve and digest
function, providing a `DigestVerifier` impl, and when the curve type
impls `DigestPrimitive`, a `Verifier` impl as well.
2020-07-31 10:24:04 -07:00
Tony Arcieri b95afa6169 ecdsa: Signer facade (gated under signer feature) (#109)
Adds a `ecdsa::signer::Signer` facade which handles parsing of
`SecretKey` data and zeroization of the private scalar.

The implementation is generic over the elliptic curve and digest
function, providing a `RandomizedDigestSigner` impl, and also when the
curve type impls `DigestPrimitive`, a `RandomizedSigner` impl.
2020-07-30 10:37:47 -07:00
Tony Arcieri fac52ad94f ecdsa: bump all elliptic curve crates; MSRV 1.41+ (#86)
Bumps the following crate dependencies, which all now depend on
`generic-array` v0.14:

- `elliptic-curve` v0.4.0
- `k256` v0.3.0
- `p256` v0.3.0
- `p384` v0.2.0

Also re-exports `generic-array` from the `elliptic-curve` crate rather
than depending on it directly, which simplifies upgrades.
2020-06-08 10:20:16 -07:00
Tony Arcieri 1ce6ebd301 .github: fix security-audit.yml branch 2020-06-08 10:02:23 -07:00
Tony Arcieri a1ae696733 Switch to GitHub Actions
Uses Rust actions from https://github.com/actions-rs
2020-03-16 10:42:18 -07:00