344 Commits
Author SHA1 Message Date
vxrenovateandbreakingbread 0d257aaf78 chore: update RustCrypto deps to stable (#8)
Rust CI / cargo fmt (push) Successful in 3s
Rust CI / cargo clippy (push) Successful in 1m25s
Rust CI / test (1.90.0 / no backend / no frontend) (push) Successful in 2m28s
Rust CI / test (stable / no backend / no frontend) (push) Successful in 2m27s
Rust CI / test (1.90.0 / no backend / --features argon2) (push) Successful in 2m32s
Rust CI / test (stable / no backend / --features serde) (push) Successful in 2m53s
Rust CI / test (stable / no backend / --features argon2) (push) Successful in 2m34s
Rust CI / test (1.90.0 / no backend / --features serde) (push) Successful in 2m51s
Rust CI / test (stable / --features curve25519 / no frontend) (push) Successful in 2m28s
Rust CI / test (1.90.0 / --features curve25519 / --features serde) (push) Successful in 2m55s
Rust CI / test (1.90.0 / --features curve25519 / no frontend) (push) Successful in 2m27s
Rust CI / test (1.90.0 / --features curve25519 / --features argon2) (push) Successful in 2m37s
Rust CI / test (stable / --features curve25519 / --features argon2) (push) Successful in 2m36s
Rust CI / test (1.90.0 / --features ecdsa / no frontend) (push) Successful in 2m50s
Rust CI / test (1.90.0 / --features ecdsa / --features argon2) (push) Successful in 2m56s
Rust CI / test (stable / --features curve25519 / --features serde) (push) Successful in 2m56s
Rust CI / test (stable / --features ecdsa / no frontend) (push) Successful in 2m48s
Rust CI / test (stable / --features ecdsa / --features serde) (push) Successful in 3m16s
Rust CI / test (stable / --features ecdsa / --features argon2) (push) Successful in 2m56s
Rust CI / test (1.90.0 / --features ecdsa / --features serde) (push) Successful in 3m17s
Rust CI / test (1.90.0 / --features ed25519 / no frontend) (push) Successful in 2m50s
Rust CI / test (1.90.0 / --features ed25519 / --features argon2) (push) Successful in 2m57s
Rust CI / test (stable / --features ed25519 / --features argon2) (push) Successful in 3m0s
Rust CI / test (stable / --features ed25519 / no frontend) (push) Successful in 2m52s
Rust CI / test (1.90.0 / --features ed25519 / --features serde) (push) Successful in 3m20s
Rust CI / test (1.90.0 / --features ristretto255 / no frontend) (push) Successful in 3m0s
Rust CI / test (stable / --features ed25519 / --features serde) (push) Successful in 3m19s
Rust CI / test (stable / --features ristretto255 / --features argon2) (push) Successful in 3m10s
Rust CI / test (stable / --features ristretto255 / no frontend) (push) Successful in 3m2s
Rust CI / test (1.90.0 / --features ristretto255 / --features argon2) (push) Successful in 3m4s
Rust CI / test (1.90.0 / --features ristretto255 / --features serde) (push) Successful in 3m30s
Rust CI / test (stable / --features ristretto255 / --features serde) (push) Successful in 3m31s
Rust CI / test (stable / --features ristretto255,curve25519,ecdsa,ed25519 / no frontend) (push) Successful in 5m7s
Rust CI / test (1.90.0 / --features ristretto255,curve25519,ecdsa,ed25519 / no frontend) (push) Successful in 5m19s
Rust CI / test (1.90.0 / --features ristretto255,curve25519,ecdsa,ed25519 / --features argon2) (push) Successful in 6m26s
Rust CI / test (stable / --features ristretto255,curve25519,ecdsa,ed25519 / --features argon2) (push) Failing after 10m23s
Rust CI / test (1.90.0 / --features ristretto255,curve25519,ecdsa,ed25519 / --features serde) (push) Failing after 19m30s
Rust CI / test (stable / --features ristretto255,curve25519,ecdsa,ed25519 / --features serde) (push) Failing after 51s
Rust CI / test (stable / --features ristretto255,kem / no frontend) (push) Successful in 3m49s
Rust CI / test (1.90.0 / --features ristretto255,kem / no frontend) (push) Failing after 1m7s
Rust CI / test (stable / --features ristretto255,kem / --features argon2) (push) Successful in 3m55s
Rust CI / test (1.90.0 / --features ristretto255,kem / --features argon2) (push) Successful in 3m57s
Rust CI / test (1.90.0 / --features ristretto255,kem / --features serde) (push) Successful in 4m21s
Rust CI / test (stable / --features ristretto255,kem / --features serde) (push) Successful in 4m23s
Rust CI / test simple_login example (push) Successful in 19s
Rust CI / test digital_locker example (push) Successful in 17s
Rust CI / cargo bench compilation () (push) Successful in 1m41s
Rust CI / cargo bench compilation (--features ristretto255) (push) Successful in 1m52s
Rust CI / cargo bench compilation (--features ristretto255,kem) (push) Successful in 2m26s
Rust CI / no-std (wasm32-unknown-unknown / no backend) (push) Successful in 27s
Rust CI / no-std (thumbv6m-none-eabi / ecdsa) (push) Successful in 27s
Rust CI / no-std (wasm32-unknown-unknown / ecdsa) (push) Successful in 27s
Rust CI / no-std (wasm32-unknown-unknown / ristretto255,curve25519,ecdsa,ed25519) (push) Successful in 17s
Rust CI / no-std (thumbv6m-none-eabi / ristretto255,curve25519,ecdsa,ed25519) (push) Successful in 18s
Rust CI / cargo audit (push) Successful in 5s
Rust CI / no-std (thumbv6m-none-eabi / no backend) (push) Successful in 27s
Rust CI / no-std (thumbv6m-none-eabi / curve25519) (push) Successful in 27s
Rust CI / no-std (wasm32-unknown-unknown / curve25519) (push) Successful in 28s
Rust CI / no-std (wasm32-unknown-unknown / ed25519) (push) Successful in 27s
Rust CI / no-std (thumbv6m-none-eabi / ed25519) (push) Successful in 28s
Rust CI / no-std (thumbv6m-none-eabi / ristretto255) (push) Successful in 27s
Rust CI / no-std (wasm32-unknown-unknown / ristretto255) (push) Successful in 27s
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [curve25519-dalek](https://github.com/dalek-cryptography/curve25519-dalek) ([source](https://github.com/dalek-cryptography/curve25519-dalek/tree/HEAD/curve25519-dalek)) | dependencies | patch | `5.0.0-rc.1` → `5.0.0` |
| [ed25519-dalek](https://github.com/dalek-cryptography/curve25519-dalek) ([source](https://github.com/dalek-cryptography/curve25519-dalek/tree/HEAD/ed25519-dalek)) | dependencies | patch | `3.0.0-rc.1` → `3.0.0` |
| [p256](https://github.com/RustCrypto/elliptic-curves/tree/master/p256) ([source](https://github.com/RustCrypto/elliptic-curves)) | dev-dependencies | patch | `0.14.0-rc.15` → `0.14.0` |
| [p384](https://github.com/RustCrypto/elliptic-curves/tree/master/p384) ([source](https://github.com/RustCrypto/elliptic-curves)) | dev-dependencies | patch | `0.14.0-rc.15` → `0.14.0` |

---

### Release Notes

<details>
<summary>dalek-cryptography/curve25519-dalek (curve25519-dalek)</summary>

### [`v5.0.0`](https://github.com/dalek-cryptography/curve25519-dalek/blob/HEAD/curve25519-dalek/CHANGELOG.md#500---2026-07-06)

##### Breaking Changes

- Update edition to 2024
- Update the MSRV from 1.60 to 1.85
- Remove `group-bits` feature due to soundness issues with underlying trait ([#&#8203;909](https://github.com/dalek-cryptography/curve25519-dalek/pull/909))
- Re-export `rand_core` ([#&#8203;908](https://github.com/dalek-cryptography/curve25519-dalek/pull/908))
- Rename `Scalar::batch_invert` -> `Scalar::invert_batch` for consistency. Also make it no-alloc. ([#&#8203;789](https://github.com/dalek-cryptography/curve25519-dalek/pull/789))
- Remove deprecated functions `FieldElement::as_bytes()` and `EdwardsPoint::nonspec_map_to_curve()` ([#&#8203;778](https://github.com/dalek-cryptography/curve25519-dalek/pull/778))
- Upgrade `rand_core` dependency to v0.10.0
- Upgrade `digest` and `sha2` deps

##### Other Changes

- Perf: Use maximum available NAF window size in `VartimePrecomputedStraus` ([#&#8203;848](https://github.com/dalek-cryptography/curve25519-dalek/pull/848))
- Perf: Skip checking 8 candidate points in `RistrettoPoint::lizard_decode` ([#&#8203;882](https://github.com/dalek-cryptography/curve25519-dalek/pull/882))
- Add Lizard bytes-to-point injection for Ristretto. Gated under `lizard` feature. ([#&#8203;826](https://github.com/dalek-cryptography/curve25519-dalek/pull/826))
- Add an allocating batch inversion called `Scalar::invert_batch_alloc` ([#&#8203;789](https://github.com/dalek-cryptography/curve25519-dalek/pull/789))
- Add `Scalar::div_by_2` ([#&#8203;805](https://github.com/dalek-cryptography/curve25519-dalek/pull/805))
- Add `EdwardsPoint::hash_to_curve` ([#&#8203;786](https://github.com/dalek-cryptography/curve25519-dalek/pull/786))
- Undeprecate `Scalar::from_bits()` ([#&#8203;780](https://github.com/dalek-cryptography/curve25519-dalek/pull/780))
- Use constant-time equality testing for compressed Ristretto and Edwards points, rather than autoderived equality

</details>

<details>
<summary>dalek-cryptography/curve25519-dalek (ed25519-dalek)</summary>

### [`v3.0.0`](https://github.com/dalek-cryptography/curve25519-dalek/blob/HEAD/ed25519-dalek/CHANGELOG.md#300---2026-07-06)

##### Breaking Changes

- Update edition to 2024
- Update the MSRV from 1.60 to 1.85
- Remove `std` feature now that `error::Error` is in `core`
- Make signing and verifying keys use `pkcs8::spki::SignatureAlgorithmIdentifier` instead of `DynSignatureAlgorithmIdentifier` ([#&#8203;779](https://github.com/dalek-cryptography/curve25519-dalek/pull/779))
- Upgrade `ed25519` dependency to v3.0.0
- Upgrade `signature` dependency to v3.0.0
- Upgrade `sha2` and `sha3` dependencies to v0.11
- Upgrade `getrandom` dependency to v0.4
- Upgrade `chacha20` dependency to v0.10
- Upgrade `rand_core` dependency to v0.10.0

##### Other Changes

- Re-export `rand_core` ([#&#8203;908](https://github.com/dalek-cryptography/curve25519-dalek/pull/908))
- Add allocation-free `EdwardsPoint::compress_batch` ([#&#8203;832](https://github.com/dalek-cryptography/curve25519-dalek/pull/832))
- Add `strobe-rs` dependency and delete vendored STROBE impl ([#&#8203;895](https://github.com/dalek-cryptography/curve25519-dalek/pull/895))
- Impl `MultipartSigner` and `MultipartVerifier` for `SigningKey` and `VerifyingKey` ([#&#8203;764](https://github.com/dalek-cryptography/curve25519-dalek/pull/764))
- Impl `KeySizeUser`, `TryKeyInit`, and `Generate` for `SigningKey`. Also impl `KeySizeUser` for `VerifyingKey` [#&#8203;733](https://github.com/dalek-cryptography/curve25519-dalek/pull/733)

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Mend Renovate](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yNTIuMSIsInVwZGF0ZWRJblZlciI6IjQzLjI1Mi4xIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIiwibGFiZWxzIjpbXX0=-->

---------

Co-authored-by: UneBaguette <[email protected]>
Reviewed-on: #8
Co-authored-by: Renovate Bot <[email protected]>
Co-committed-by: Renovate Bot <[email protected]>
2026-07-08 23:43:23 +02:00
breakingbread 0e9eeb10b2 chore: commit Cargo.lock, update gitignore per current Cargo guidance
Rust CI / cargo clippy (push) Successful in 1m35s
Rust CI / cargo fmt (push) Successful in 14s
Rust CI / test (1.90.0 / no backend / --features argon2) (push) Successful in 2m30s
Rust CI / test (1.90.0 / no backend / no frontend) (push) Successful in 2m25s
Rust CI / test (stable / no backend / no frontend) (push) Successful in 2m26s
Rust CI / test (stable / no backend / --features argon2) (push) Successful in 2m33s
Rust CI / test (1.90.0 / no backend / --features serde) (push) Successful in 2m53s
Rust CI / test (stable / no backend / --features serde) (push) Successful in 2m49s
Rust CI / test (1.90.0 / --features curve25519 / no frontend) (push) Successful in 2m28s
Rust CI / test (stable / --features curve25519 / no frontend) (push) Successful in 2m28s
Rust CI / test (1.90.0 / --features curve25519 / --features argon2) (push) Successful in 2m34s
Rust CI / test (stable / --features curve25519 / --features argon2) (push) Successful in 2m34s
Rust CI / test (1.90.0 / --features curve25519 / --features serde) (push) Successful in 2m57s
Rust CI / test (stable / --features curve25519 / --features serde) (push) Successful in 2m56s
Rust CI / test (1.90.0 / --features ecdsa / no frontend) (push) Successful in 2m47s
Rust CI / test (stable / --features ecdsa / no frontend) (push) Successful in 2m48s
Rust CI / test (1.90.0 / --features ecdsa / --features argon2) (push) Successful in 2m55s
Rust CI / test (stable / --features ecdsa / --features argon2) (push) Successful in 2m57s
Rust CI / test (1.90.0 / --features ecdsa / --features serde) (push) Successful in 3m16s
Rust CI / test (stable / --features ecdsa / --features serde) (push) Successful in 3m17s
Rust CI / test (1.90.0 / --features ed25519 / no frontend) (push) Successful in 2m50s
Rust CI / test (1.90.0 / --features ed25519 / --features argon2) (push) Successful in 2m55s
Rust CI / test (stable / --features ed25519 / no frontend) (push) Successful in 2m51s
Rust CI / test (1.90.0 / --features ristretto255 / no frontend) (push) Successful in 3m0s
Rust CI / test (stable / --features ristretto255 / no frontend) (push) Successful in 3m1s
Rust CI / test (stable / --features ed25519 / --features argon2) (push) Successful in 2m57s
Rust CI / test (1.90.0 / --features ed25519 / --features serde) (push) Successful in 3m17s
Rust CI / test (stable / --features ed25519 / --features serde) (push) Successful in 3m18s
Rust CI / test (1.90.0 / --features ristretto255 / --features argon2) (push) Successful in 3m5s
Rust CI / test (stable / --features ristretto255 / --features argon2) (push) Successful in 3m8s
Rust CI / test (1.90.0 / --features ristretto255 / --features serde) (push) Successful in 3m25s
Rust CI / test (1.90.0 / --features ristretto255,curve25519,ecdsa,ed25519 / no frontend) (push) Successful in 5m16s
Rust CI / test (stable / --features ristretto255 / --features serde) (push) Successful in 3m30s
Rust CI / test (stable / --features ristretto255,curve25519,ecdsa,ed25519 / no frontend) (push) Successful in 5m4s
Rust CI / test (1.90.0 / --features ristretto255,curve25519,ecdsa,ed25519 / --features argon2) (push) Successful in 6m6s
Rust CI / test (stable / --features ristretto255,curve25519,ecdsa,ed25519 / --features argon2) (push) Successful in 5m10s
Rust CI / test (1.90.0 / --features ristretto255,curve25519,ecdsa,ed25519 / --features serde) (push) Successful in 5m56s
Rust CI / test (stable / --features ristretto255,curve25519,ecdsa,ed25519 / --features serde) (push) Successful in 5m41s
Rust CI / test (stable / --features ristretto255,kem / --features argon2) (push) Successful in 3m56s
Rust CI / test (1.90.0 / --features ristretto255,kem / no frontend) (push) Successful in 3m49s
Rust CI / test (stable / --features ristretto255,kem / no frontend) (push) Successful in 3m48s
Rust CI / test (1.90.0 / --features ristretto255,kem / --features argon2) (push) Successful in 3m56s
Rust CI / test (1.90.0 / --features ristretto255,kem / --features serde) (push) Successful in 4m23s
Rust CI / test (stable / --features ristretto255,kem / --features serde) (push) Successful in 4m26s
Rust CI / test simple_login example (push) Successful in 19s
Rust CI / test digital_locker example (push) Successful in 17s
Rust CI / cargo bench compilation (--features ristretto255) (push) Successful in 1m50s
Rust CI / cargo bench compilation () (push) Successful in 1m43s
Rust CI / cargo bench compilation (--features ristretto255,kem) (push) Successful in 2m30s
Rust CI / cargo audit (push) Successful in 6s
Rust CI / no-std (wasm32-unknown-unknown / ed25519) (push) Successful in 17s
Rust CI / no-std (thumbv6m-none-eabi / no backend) (push) Successful in 17s
Rust CI / no-std (wasm32-unknown-unknown / no backend) (push) Successful in 17s
Rust CI / no-std (thumbv6m-none-eabi / ecdsa) (push) Successful in 27s
Rust CI / no-std (wasm32-unknown-unknown / ecdsa) (push) Successful in 27s
Rust CI / no-std (thumbv6m-none-eabi / ed25519) (push) Successful in 28s
Rust CI / no-std (thumbv6m-none-eabi / ristretto255) (push) Successful in 28s
Rust CI / no-std (thumbv6m-none-eabi / ristretto255,curve25519,ecdsa,ed25519) (push) Successful in 28s
Rust CI / no-std (wasm32-unknown-unknown / ristretto255,curve25519,ecdsa,ed25519) (push) Successful in 28s
Rust CI / no-std (thumbv6m-none-eabi / curve25519) (push) Successful in 27s
Rust CI / no-std (wasm32-unknown-unknown / curve25519) (push) Successful in 27s
Rust CI / no-std (wasm32-unknown-unknown / ristretto255) (push) Successful in 27s
2026-07-05 00:15:13 +02:00
breakingbread 09286d34fc feat: replace deprecated ExpandedKeyEncoding with seed serialization, derive ZeroizeOnDrop (#7)
Rust CI / cargo clippy (push) Successful in 1m23s
Rust CI / cargo fmt (push) Successful in 3s
Rust CI / test (1.90.0 / no backend / no frontend) (push) Successful in 2m24s
Publish / publish (release) Successful in 57s
Rust CI / test (stable / no backend / no frontend) (push) Successful in 2m24s
Rust CI / test (1.90.0 / no backend / --features serde) (push) Successful in 2m51s
Rust CI / test (1.90.0 / no backend / --features argon2) (push) Successful in 2m32s
Rust CI / test (stable / no backend / --features argon2) (push) Successful in 2m33s
Rust CI / test (1.90.0 / --features curve25519 / no frontend) (push) Successful in 2m30s
Rust CI / test (stable / no backend / --features serde) (push) Successful in 2m53s
Rust CI / test (stable / --features curve25519 / no frontend) (push) Successful in 2m28s
Rust CI / test (1.90.0 / --features curve25519 / --features argon2) (push) Successful in 2m35s
Rust CI / test (stable / --features curve25519 / --features argon2) (push) Successful in 2m37s
Rust CI / test (1.90.0 / --features curve25519 / --features serde) (push) Successful in 2m57s
Rust CI / test (stable / --features curve25519 / --features serde) (push) Successful in 2m58s
Rust CI / test (1.90.0 / --features ecdsa / no frontend) (push) Successful in 2m50s
Rust CI / test (stable / --features ecdsa / no frontend) (push) Successful in 2m49s
Rust CI / test (1.90.0 / --features ecdsa / --features argon2) (push) Successful in 2m58s
Rust CI / test (stable / --features ecdsa / --features serde) (push) Successful in 3m20s
Rust CI / test (stable / --features ecdsa / --features argon2) (push) Successful in 2m59s
Rust CI / test (1.90.0 / --features ecdsa / --features serde) (push) Successful in 3m19s
Rust CI / test (1.90.0 / --features ed25519 / no frontend) (push) Successful in 2m52s
Rust CI / test (1.90.0 / --features ed25519 / --features argon2) (push) Successful in 2m58s
Rust CI / test (stable / --features ed25519 / no frontend) (push) Successful in 2m53s
Rust CI / test (stable / --features ed25519 / --features argon2) (push) Successful in 3m0s
Rust CI / test (1.90.0 / --features ed25519 / --features serde) (push) Successful in 3m20s
Rust CI / test (stable / --features ed25519 / --features serde) (push) Successful in 3m18s
Rust CI / test (1.90.0 / --features ristretto255 / no frontend) (push) Successful in 2m59s
Rust CI / test (stable / --features ristretto255 / no frontend) (push) Successful in 3m3s
Rust CI / test (1.90.0 / --features ristretto255 / --features argon2) (push) Successful in 3m8s
Rust CI / test (stable / --features ristretto255 / --features argon2) (push) Successful in 3m13s
Rust CI / test (1.90.0 / --features ristretto255 / --features serde) (push) Successful in 3m28s
Rust CI / test (stable / --features ristretto255 / --features serde) (push) Successful in 3m32s
Rust CI / test (1.90.0 / --features ristretto255,curve25519,ecdsa,ed25519 / no frontend) (push) Successful in 5m20s
Rust CI / test (stable / --features ristretto255,curve25519,ecdsa,ed25519 / no frontend) (push) Successful in 5m9s
Rust CI / test (1.90.0 / --features ristretto255,curve25519,ecdsa,ed25519 / --features argon2) (push) Successful in 5m29s
Rust CI / test (stable / --features ristretto255,curve25519,ecdsa,ed25519 / --features argon2) (push) Successful in 5m12s
Rust CI / test (1.90.0 / --features ristretto255,curve25519,ecdsa,ed25519 / --features serde) (push) Successful in 5m53s
Rust CI / test (1.90.0 / --features ristretto255,kem / no frontend) (push) Successful in 3m54s
Rust CI / test (stable / --features ristretto255,curve25519,ecdsa,ed25519 / --features serde) (push) Successful in 5m45s
Rust CI / test (stable / --features ristretto255,kem / no frontend) (push) Successful in 3m51s
Rust CI / test (1.90.0 / --features ristretto255,kem / --features argon2) (push) Successful in 4m1s
Rust CI / test (stable / --features ristretto255,kem / --features argon2) (push) Successful in 3m58s
Rust CI / test (1.90.0 / --features ristretto255,kem / --features serde) (push) Successful in 4m25s
Rust CI / test (stable / --features ristretto255,kem / --features serde) (push) Successful in 4m23s
Rust CI / test simple_login example (push) Successful in 18s
Rust CI / test digital_locker example (push) Successful in 17s
Rust CI / cargo bench compilation () (push) Successful in 1m44s
Rust CI / cargo bench compilation (--features ristretto255) (push) Successful in 1m54s
Rust CI / cargo bench compilation (--features ristretto255,kem) (push) Successful in 2m28s
Rust CI / cargo audit (push) Successful in 8s
Rust CI / no-std (wasm32-unknown-unknown / curve25519) (push) Successful in 18s
Rust CI / no-std (thumbv6m-none-eabi / ed25519) (push) Successful in 30s
Rust CI / no-std (wasm32-unknown-unknown / ed25519) (push) Successful in 29s
Rust CI / no-std (thumbv6m-none-eabi / no backend) (push) Successful in 17s
Rust CI / no-std (wasm32-unknown-unknown / ecdsa) (push) Successful in 18s
Rust CI / no-std (thumbv6m-none-eabi / ristretto255) (push) Successful in 18s
Rust CI / no-std (thumbv6m-none-eabi / ristretto255,curve25519,ecdsa,ed25519) (push) Successful in 29s
Rust CI / no-std (wasm32-unknown-unknown / ristretto255) (push) Successful in 28s
Rust CI / no-std (wasm32-unknown-unknown / ristretto255,curve25519,ecdsa,ed25519) (push) Successful in 19s
Rust CI / no-std (thumbv6m-none-eabi / curve25519) (push) Successful in 27s
Rust CI / no-std (wasm32-unknown-unknown / no backend) (push) Successful in 19s
Rust CI / no-std (thumbv6m-none-eabi / ecdsa) (push) Successful in 27s
- Add ZeroizeOnDrop bound to Hash trait
- Replace manual Drop impls on Ke2Builder and KemKe2Builder with derive_where
- Migrate KEM decapsulation key serialization from expanded form to 64-byte seed (KeyInit/KeyExport)
- Fix voprf deserialization to pass exact-length slices
- Bump voprf-vx to 1.0.0-rc.1
- Regenerate test vectors

Reviewed-on: #7
Co-authored-by: UneBaguette <[email protected]>
Co-committed-by: UneBaguette <[email protected]>
v1.0.0-rc.0
2026-07-03 13:06:30 +02:00
breakingbread b9b8699ee7 chore: bump to v1.0.0-rc.0, fix doc (#6)
Rust CI / cargo fmt (push) Successful in 3s
Rust CI / test (1.90.0 / no backend / --features argon2) (push) Has been cancelled
Rust CI / test (stable / no backend / --features argon2) (push) Has been cancelled
Rust CI / test (1.90.0 / no backend / --features serde) (push) Has been cancelled
Rust CI / test (stable / no backend / --features serde) (push) Has been cancelled
Rust CI / test (1.90.0 / --features curve25519 / no frontend) (push) Has been cancelled
Rust CI / cargo clippy (push) Successful in 1m27s
Rust CI / test (1.90.0 / no backend / no frontend) (push) Failing after 1m35s
Rust CI / test (1.90.0 / --features ristretto255,curve25519,ecdsa,ed25519 / --features serde) (push) Has been cancelled
Rust CI / test (stable / --features ristretto255,curve25519,ecdsa,ed25519 / --features serde) (push) Has been cancelled
Rust CI / test (1.90.0 / --features ristretto255,kem / no frontend) (push) Has been cancelled
Rust CI / test (stable / --features ristretto255,kem / no frontend) (push) Has been cancelled
Rust CI / test (1.90.0 / --features ristretto255,kem / --features argon2) (push) Has been cancelled
Rust CI / test (stable / --features ristretto255,kem / --features argon2) (push) Has been cancelled
Rust CI / test (1.90.0 / --features ristretto255,kem / --features serde) (push) Has been cancelled
Rust CI / test (stable / --features ristretto255,kem / --features serde) (push) Has been cancelled
Rust CI / test simple_login example (push) Has been cancelled
Rust CI / test digital_locker example (push) Has been cancelled
Rust CI / test (stable / --features curve25519 / no frontend) (push) Has been cancelled
Rust CI / test (1.90.0 / --features curve25519 / --features argon2) (push) Has been cancelled
Rust CI / test (stable / --features curve25519 / --features argon2) (push) Has been cancelled
Rust CI / test (1.90.0 / --features curve25519 / --features serde) (push) Has been cancelled
Rust CI / test (stable / --features curve25519 / --features serde) (push) Has been cancelled
Rust CI / test (1.90.0 / --features ecdsa / no frontend) (push) Has been cancelled
Rust CI / test (stable / --features ecdsa / no frontend) (push) Has been cancelled
Rust CI / test (1.90.0 / --features ecdsa / --features argon2) (push) Has been cancelled
Rust CI / test (stable / --features ecdsa / --features argon2) (push) Has been cancelled
Rust CI / test (1.90.0 / --features ecdsa / --features serde) (push) Has been cancelled
Rust CI / test (stable / --features ecdsa / --features serde) (push) Has been cancelled
Rust CI / test (1.90.0 / --features ed25519 / no frontend) (push) Has been cancelled
Rust CI / test (stable / --features ed25519 / no frontend) (push) Has been cancelled
Rust CI / test (1.90.0 / --features ed25519 / --features argon2) (push) Has been cancelled
Rust CI / test (stable / --features ed25519 / --features argon2) (push) Has been cancelled
Rust CI / test (1.90.0 / --features ed25519 / --features serde) (push) Has been cancelled
Rust CI / test (stable / --features ed25519 / --features serde) (push) Has been cancelled
Rust CI / test (1.90.0 / --features ristretto255 / no frontend) (push) Has been cancelled
Rust CI / test (stable / --features ristretto255 / no frontend) (push) Has been cancelled
Rust CI / test (1.90.0 / --features ristretto255 / --features argon2) (push) Has been cancelled
Rust CI / test (stable / --features ristretto255 / --features argon2) (push) Has been cancelled
Rust CI / test (1.90.0 / --features ristretto255 / --features serde) (push) Has been cancelled
Rust CI / test (stable / --features ristretto255 / --features serde) (push) Has been cancelled
Rust CI / test (1.90.0 / --features ristretto255,curve25519,ecdsa,ed25519 / no frontend) (push) Has been cancelled
Rust CI / test (stable / --features ristretto255,curve25519,ecdsa,ed25519 / no frontend) (push) Has been cancelled
Rust CI / test (1.90.0 / --features ristretto255,curve25519,ecdsa,ed25519 / --features argon2) (push) Has been cancelled
Rust CI / test (stable / --features ristretto255,curve25519,ecdsa,ed25519 / --features argon2) (push) Has been cancelled
Rust CI / cargo bench compilation () (push) Has been cancelled
Rust CI / cargo bench compilation (--features ristretto255) (push) Has been cancelled
Rust CI / cargo bench compilation (--features ristretto255,kem) (push) Has been cancelled
Rust CI / cargo audit (push) Has been cancelled
Rust CI / no-std (thumbv6m-none-eabi / ed25519) (push) Has been cancelled
Rust CI / test (stable / no backend / no frontend) (push) Has been cancelled
Rust CI / no-std (wasm32-unknown-unknown / ecdsa) (push) Has been cancelled
Rust CI / no-std (wasm32-unknown-unknown / ristretto255) (push) Has been cancelled
Rust CI / no-std (wasm32-unknown-unknown / ristretto255,curve25519,ecdsa,ed25519) (push) Has been cancelled
Rust CI / no-std (wasm32-unknown-unknown / curve25519) (push) Has been cancelled
Rust CI / no-std (thumbv6m-none-eabi / ecdsa) (push) Has been cancelled
Rust CI / no-std (wasm32-unknown-unknown / ed25519) (push) Has been cancelled
Rust CI / no-std (thumbv6m-none-eabi / no backend) (push) Has been cancelled
Rust CI / no-std (wasm32-unknown-unknown / no backend) (push) Has been cancelled
Rust CI / no-std (thumbv6m-none-eabi / curve25519) (push) Has been cancelled
Rust CI / no-std (thumbv6m-none-eabi / ristretto255) (push) Has been cancelled
Rust CI / no-std (thumbv6m-none-eabi / ristretto255,curve25519,ecdsa,ed25519) (push) Has been cancelled
Reviewed-on: #6
Co-authored-by: UneBaguette <[email protected]>
Co-committed-by: UneBaguette <[email protected]>
2026-07-02 23:21:28 +02:00
breakingbread 2e1bcfe4c2 chore: fix README package name, enable zeroize on crates, rand_core removed for reexport (#4)
Rust CI / cargo fmt (push) Successful in 15s
Rust CI / test (1.90.0 / no backend / --features argon2) (push) Successful in 2m35s
Rust CI / cargo clippy (push) Successful in 1m28s
Rust CI / test (1.90.0 / no backend / no frontend) (push) Successful in 2m40s
Rust CI / test (stable / no backend / no frontend) (push) Successful in 2m28s
Rust CI / test (stable / no backend / --features serde) (push) Successful in 2m54s
Rust CI / test (stable / no backend / --features argon2) (push) Successful in 2m35s
Rust CI / test (1.90.0 / no backend / --features serde) (push) Successful in 2m54s
Rust CI / test (stable / --features curve25519 / no frontend) (push) Successful in 2m35s
Rust CI / test (1.90.0 / --features curve25519 / no frontend) (push) Successful in 2m29s
Rust CI / test (stable / --features curve25519 / --features argon2) (push) Successful in 2m39s
Rust CI / test (1.90.0 / --features curve25519 / --features argon2) (push) Successful in 2m38s
Rust CI / test (stable / --features curve25519 / --features serde) (push) Successful in 3m8s
Rust CI / test (1.90.0 / --features curve25519 / --features serde) (push) Successful in 2m57s
Rust CI / test (1.90.0 / --features ecdsa / no frontend) (push) Successful in 2m56s
Rust CI / test (stable / --features ecdsa / no frontend) (push) Successful in 2m52s
Rust CI / test (stable / --features ecdsa / --features argon2) (push) Successful in 3m0s
Publish / publish (release) Successful in 1m5s
Rust CI / test (1.90.0 / --features ecdsa / --features argon2) (push) Successful in 2m56s
Rust CI / test (1.90.0 / --features ed25519 / no frontend) (push) Successful in 2m51s
Rust CI / test (1.90.0 / --features ecdsa / --features serde) (push) Successful in 3m20s
Rust CI / test (stable / --features ecdsa / --features serde) (push) Successful in 3m19s
Rust CI / test (stable / --features ed25519 / no frontend) (push) Successful in 2m53s
Rust CI / test (stable / --features ed25519 / --features argon2) (push) Successful in 3m1s
Rust CI / test (1.90.0 / --features ed25519 / --features argon2) (push) Successful in 3m0s
Rust CI / test (1.90.0 / --features ed25519 / --features serde) (push) Successful in 3m21s
Rust CI / test (stable / --features ed25519 / --features serde) (push) Successful in 3m20s
Rust CI / test (stable / --features ristretto255 / no frontend) (push) Successful in 3m7s
Rust CI / test (1.90.0 / --features ristretto255 / no frontend) (push) Successful in 3m3s
Rust CI / test (1.90.0 / --features ristretto255 / --features argon2) (push) Successful in 3m13s
Rust CI / test (stable / --features ristretto255 / --features argon2) (push) Successful in 3m10s
Rust CI / test (1.90.0 / --features ristretto255 / --features serde) (push) Successful in 3m31s
Rust CI / test (stable / --features ristretto255 / --features serde) (push) Successful in 3m29s
Rust CI / test (1.90.0 / --features ristretto255,curve25519,ecdsa,ed25519 / no frontend) (push) Successful in 5m20s
Rust CI / test (stable / --features ristretto255,curve25519,ecdsa,ed25519 / no frontend) (push) Successful in 5m8s
Rust CI / test (1.90.0 / --features ristretto255,curve25519,ecdsa,ed25519 / --features argon2) (push) Successful in 5m28s
Rust CI / test (stable / --features ristretto255,curve25519,ecdsa,ed25519 / --features argon2) (push) Successful in 5m17s
Rust CI / test (1.90.0 / --features ristretto255,curve25519,ecdsa,ed25519 / --features serde) (push) Successful in 5m56s
Rust CI / test (stable / --features ristretto255,curve25519,ecdsa,ed25519 / --features serde) (push) Successful in 5m47s
Rust CI / test (1.90.0 / --features ristretto255,kem / no frontend) (push) Successful in 4m0s
Rust CI / test (1.90.0 / --features ristretto255,kem / --features argon2) (push) Successful in 4m21s
Rust CI / test (stable / --features ristretto255,kem / no frontend) (push) Successful in 3m58s
Rust CI / test (stable / --features ristretto255,kem / --features argon2) (push) Successful in 4m3s
Rust CI / test (stable / --features ristretto255,kem / --features serde) (push) Successful in 4m34s
Rust CI / test (1.90.0 / --features ristretto255,kem / --features serde) (push) Successful in 4m28s
Rust CI / test simple_login example (push) Successful in 19s
Rust CI / test digital_locker example (push) Successful in 17s
Rust CI / cargo bench compilation () (push) Successful in 1m45s
Rust CI / cargo bench compilation (--features ristretto255) (push) Successful in 1m53s
Rust CI / cargo bench compilation (--features ristretto255,kem) (push) Successful in 2m33s
Rust CI / cargo audit (push) Successful in 10s
Rust CI / no-std (thumbv6m-none-eabi / ecdsa) (push) Successful in 29s
Rust CI / no-std (wasm32-unknown-unknown / ecdsa) (push) Successful in 29s
Rust CI / no-std (thumbv6m-none-eabi / ristretto255,curve25519,ecdsa,ed25519) (push) Successful in 31s
Rust CI / no-std (thumbv6m-none-eabi / no backend) (push) Successful in 29s
Rust CI / no-std (wasm32-unknown-unknown / no backend) (push) Successful in 27s
Rust CI / no-std (wasm32-unknown-unknown / ristretto255) (push) Successful in 31s
Rust CI / no-std (wasm32-unknown-unknown / ristretto255,curve25519,ecdsa,ed25519) (push) Successful in 21s
Rust CI / no-std (thumbv6m-none-eabi / curve25519) (push) Successful in 27s
Rust CI / no-std (wasm32-unknown-unknown / curve25519) (push) Successful in 41s
Rust CI / no-std (wasm32-unknown-unknown / ed25519) (push) Successful in 20s
Rust CI / no-std (thumbv6m-none-eabi / ed25519) (push) Successful in 27s
Rust CI / no-std (thumbv6m-none-eabi / ristretto255) (push) Successful in 29s
Reviewed-on: #4
Co-authored-by: UneBaguette <[email protected]>
Co-committed-by: UneBaguette <[email protected]>
v1.0.0-pre.1
2026-07-02 08:19:22 +02:00
breakingbread efa98962b7 chore: update copyright headers to SPDX format and code cleanup (#3)
Publish / publish (release) Successful in 1m2s
Rust CI / cargo fmt (push) Successful in 3s
Rust CI / test (stable / no backend / no frontend) (push) Successful in 2m31s
Rust CI / cargo clippy (push) Successful in 1m24s
Rust CI / test (1.90.0 / no backend / no frontend) (push) Successful in 2m28s
Rust CI / test (1.90.0 / no backend / --features argon2) (push) Successful in 2m35s
Rust CI / test (stable / no backend / --features argon2) (push) Successful in 2m33s
Rust CI / test (1.90.0 / no backend / --features serde) (push) Successful in 2m53s
Rust CI / test (1.90.0 / --features curve25519 / --features argon2) (push) Successful in 2m36s
Rust CI / test (stable / no backend / --features serde) (push) Successful in 2m51s
Rust CI / test (1.90.0 / --features curve25519 / no frontend) (push) Successful in 2m29s
Rust CI / test (stable / --features curve25519 / no frontend) (push) Successful in 2m29s
Rust CI / test (stable / --features curve25519 / --features serde) (push) Successful in 2m55s
Rust CI / test (stable / --features curve25519 / --features argon2) (push) Successful in 2m35s
Rust CI / test (1.90.0 / --features curve25519 / --features serde) (push) Successful in 2m56s
Rust CI / test (stable / --features ecdsa / no frontend) (push) Successful in 2m53s
Rust CI / test (1.90.0 / --features ecdsa / no frontend) (push) Successful in 2m51s
Rust CI / test (1.90.0 / --features ecdsa / --features argon2) (push) Successful in 2m57s
Rust CI / test (1.90.0 / --features ecdsa / --features serde) (push) Successful in 3m20s
Rust CI / test (stable / --features ed25519 / no frontend) (push) Successful in 2m54s
Rust CI / test (stable / --features ecdsa / --features argon2) (push) Successful in 3m0s
Rust CI / test (stable / --features ecdsa / --features serde) (push) Successful in 3m19s
Rust CI / test (1.90.0 / --features ed25519 / no frontend) (push) Successful in 2m52s
Rust CI / test (1.90.0 / --features ed25519 / --features argon2) (push) Successful in 2m57s
Rust CI / test (1.90.0 / --features ristretto255 / no frontend) (push) Successful in 3m2s
Rust CI / test (stable / --features ed25519 / --features argon2) (push) Successful in 3m1s
Rust CI / test (1.90.0 / --features ed25519 / --features serde) (push) Successful in 3m20s
Rust CI / test (stable / --features ed25519 / --features serde) (push) Successful in 3m21s
Rust CI / test (stable / --features ristretto255 / no frontend) (push) Successful in 3m4s
Rust CI / test (1.90.0 / --features ristretto255 / --features argon2) (push) Successful in 3m8s
Rust CI / test (1.90.0 / --features ristretto255 / --features serde) (push) Successful in 3m28s
Rust CI / test (stable / --features ristretto255 / --features argon2) (push) Successful in 3m9s
Rust CI / test (stable / --features ristretto255 / --features serde) (push) Successful in 3m32s
Rust CI / test (1.90.0 / --features ristretto255,curve25519,ecdsa,ed25519 / no frontend) (push) Successful in 5m21s
Rust CI / test (stable / --features ristretto255,curve25519,ecdsa,ed25519 / no frontend) (push) Successful in 5m11s
Rust CI / test (1.90.0 / --features ristretto255,curve25519,ecdsa,ed25519 / --features argon2) (push) Successful in 5m27s
Rust CI / test (stable / --features ristretto255,curve25519,ecdsa,ed25519 / --features argon2) (push) Successful in 5m14s
Rust CI / test (stable / --features ristretto255,curve25519,ecdsa,ed25519 / --features serde) (push) Successful in 5m45s
Rust CI / test (1.90.0 / --features ristretto255,curve25519,ecdsa,ed25519 / --features serde) (push) Successful in 5m58s
Rust CI / test (1.90.0 / --features ristretto255,kem / no frontend) (push) Successful in 3m59s
Rust CI / test (stable / --features ristretto255,kem / no frontend) (push) Successful in 4m0s
Rust CI / test (1.90.0 / --features ristretto255,kem / --features argon2) (push) Successful in 4m12s
Rust CI / test (stable / --features ristretto255,kem / --features argon2) (push) Successful in 4m4s
Rust CI / test (1.90.0 / --features ristretto255,kem / --features serde) (push) Successful in 4m34s
Rust CI / test (stable / --features ristretto255,kem / --features serde) (push) Successful in 4m27s
Rust CI / test simple_login example (push) Successful in 18s
Rust CI / test digital_locker example (push) Successful in 19s
Rust CI / cargo bench compilation () (push) Successful in 1m46s
Rust CI / cargo bench compilation (--features ristretto255) (push) Successful in 1m54s
Rust CI / cargo audit (push) Successful in 6s
Rust CI / no-std (wasm32-unknown-unknown / ristretto255,curve25519,ecdsa,ed25519) (push) Successful in 29s
Rust CI / cargo bench compilation (--features ristretto255,kem) (push) Successful in 2m32s
Rust CI / no-std (wasm32-unknown-unknown / no backend) (push) Successful in 28s
Rust CI / no-std (wasm32-unknown-unknown / curve25519) (push) Successful in 18s
Rust CI / no-std (thumbv6m-none-eabi / no backend) (push) Successful in 28s
Rust CI / no-std (thumbv6m-none-eabi / curve25519) (push) Successful in 28s
Rust CI / no-std (wasm32-unknown-unknown / ecdsa) (push) Successful in 18s
Rust CI / no-std (thumbv6m-none-eabi / ecdsa) (push) Successful in 29s
Rust CI / no-std (thumbv6m-none-eabi / ed25519) (push) Successful in 20s
Rust CI / no-std (wasm32-unknown-unknown / ed25519) (push) Successful in 20s
Rust CI / no-std (thumbv6m-none-eabi / ristretto255) (push) Successful in 28s
Rust CI / no-std (wasm32-unknown-unknown / ristretto255) (push) Successful in 27s
Rust CI / no-std (thumbv6m-none-eabi / ristretto255,curve25519,ecdsa,ed25519) (push) Successful in 18s
- Added VexaHub copyright alongside original Meta copyright
- Replaced verbose license blocks with SPDX-License-Identifier
- Minor code improvements

Reviewed-on: #3
Co-authored-by: UneBaguette <[email protected]>
Co-committed-by: UneBaguette <[email protected]>
v1.0.0-pre.0
2026-07-01 20:48:44 +02:00
breakingbread 71df1ee49a feat: upgrade crypto ecosystem to latest RustCrypto stack (#1)
Rust CI / cargo audit (push) Successful in 6s
Rust CI / cargo fmt (push) Successful in 4s
Rust CI / test (1.90.0 / no backend / no frontend) (push) Successful in 2m25s
Rust CI / test (stable / no backend / no frontend) (push) Successful in 2m27s
Rust CI / cargo clippy (push) Successful in 1m25s
Rust CI / test (1.90.0 / no backend / --features argon2) (push) Successful in 2m35s
Rust CI / test (stable / no backend / --features argon2) (push) Successful in 2m34s
Rust CI / test (stable / no backend / --features serde) (push) Successful in 2m55s
Rust CI / test (stable / --features curve25519 / no frontend) (push) Successful in 2m31s
Rust CI / test (1.90.0 / no backend / --features serde) (push) Successful in 2m52s
Rust CI / test (1.90.0 / --features curve25519 / no frontend) (push) Successful in 2m29s
Rust CI / test (1.90.0 / --features curve25519 / --features argon2) (push) Successful in 2m37s
Rust CI / test (stable / --features curve25519 / --features argon2) (push) Successful in 2m36s
Rust CI / test (1.90.0 / --features curve25519 / --features serde) (push) Successful in 2m59s
Rust CI / test (stable / --features curve25519 / --features serde) (push) Successful in 3m1s
Rust CI / test (1.90.0 / --features ecdsa / no frontend) (push) Successful in 2m52s
Rust CI / test (stable / --features ecdsa / no frontend) (push) Successful in 2m51s
Rust CI / test (1.90.0 / --features ecdsa / --features argon2) (push) Successful in 2m57s
Rust CI / test (stable / --features ecdsa / --features argon2) (push) Successful in 2m58s
Rust CI / test (1.90.0 / --features ecdsa / --features serde) (push) Successful in 3m19s
Rust CI / test (1.90.0 / --features ristretto255 / no frontend) (push) Successful in 3m2s
Rust CI / test (stable / --features ecdsa / --features serde) (push) Successful in 3m19s
Rust CI / test (1.90.0 / --features ed25519 / no frontend) (push) Successful in 2m53s
Rust CI / test (stable / --features ed25519 / no frontend) (push) Successful in 2m54s
Rust CI / test (1.90.0 / --features ed25519 / --features argon2) (push) Successful in 3m3s
Rust CI / test (stable / --features ed25519 / --features argon2) (push) Successful in 3m0s
Rust CI / test (1.90.0 / --features ed25519 / --features serde) (push) Successful in 3m22s
Rust CI / test (stable / --features ed25519 / --features serde) (push) Successful in 3m22s
Rust CI / test (1.90.0 / --features ristretto255 / --features argon2) (push) Successful in 3m9s
Rust CI / test (stable / --features ristretto255 / no frontend) (push) Successful in 3m4s
Rust CI / test (stable / --features ristretto255 / --features argon2) (push) Successful in 3m11s
Rust CI / test (1.90.0 / --features ristretto255 / --features serde) (push) Successful in 3m28s
Rust CI / test (stable / --features ristretto255 / --features serde) (push) Successful in 3m32s
Rust CI / test (1.90.0 / --features ristretto255,curve25519,ecdsa,ed25519 / no frontend) (push) Successful in 5m26s
Rust CI / test (stable / --features ristretto255,curve25519,ecdsa,ed25519 / no frontend) (push) Successful in 5m17s
Rust CI / test (1.90.0 / --features ristretto255,curve25519,ecdsa,ed25519 / --features argon2) (push) Successful in 5m27s
Rust CI / test (stable / --features ristretto255,curve25519,ecdsa,ed25519 / --features serde) (push) Successful in 5m43s
Rust CI / test (stable / --features ristretto255,curve25519,ecdsa,ed25519 / --features argon2) (push) Successful in 5m20s
Rust CI / test (1.90.0 / --features ristretto255,curve25519,ecdsa,ed25519 / --features serde) (push) Successful in 6m1s
Rust CI / test (stable / --features ristretto255,kem / no frontend) (push) Successful in 4m0s
Rust CI / test (1.90.0 / --features ristretto255,kem / --features argon2) (push) Successful in 4m5s
Rust CI / test (1.90.0 / --features ristretto255,kem / no frontend) (push) Successful in 4m2s
Rust CI / test (stable / --features ristretto255,kem / --features argon2) (push) Successful in 4m3s
Rust CI / test (stable / --features ristretto255,kem / --features serde) (push) Successful in 4m32s
Rust CI / test (1.90.0 / --features ristretto255,kem / --features serde) (push) Successful in 4m31s
Rust CI / test simple_login example (push) Successful in 19s
Rust CI / test digital_locker example (push) Successful in 18s
Rust CI / cargo bench compilation () (push) Successful in 1m47s
Rust CI / cargo bench compilation (--features ristretto255) (push) Successful in 1m55s
Rust CI / cargo bench compilation (--features ristretto255,kem) (push) Successful in 2m35s
Rust CI / no-std (thumbv6m-none-eabi / no backend) (push) Successful in 28s
Rust CI / no-std (wasm32-unknown-unknown / no backend) (push) Successful in 28s
Rust CI / no-std (thumbv6m-none-eabi / curve25519) (push) Successful in 18s
Rust CI / no-std (wasm32-unknown-unknown / curve25519) (push) Successful in 28s
Rust CI / no-std (thumbv6m-none-eabi / ecdsa) (push) Successful in 29s
Rust CI / no-std (wasm32-unknown-unknown / ecdsa) (push) Successful in 28s
Rust CI / no-std (thumbv6m-none-eabi / ed25519) (push) Successful in 29s
Rust CI / no-std (wasm32-unknown-unknown / ed25519) (push) Successful in 30s
Rust CI / no-std (thumbv6m-none-eabi / ristretto255) (push) Successful in 28s
Rust CI / no-std (wasm32-unknown-unknown / ristretto255) (push) Successful in 28s
Rust CI / no-std (thumbv6m-none-eabi / ristretto255,curve25519,ecdsa,ed25519) (push) Successful in 29s
Rust CI / no-std (wasm32-unknown-unknown / ristretto255,curve25519,ecdsa,ed25519) (push) Successful in 19s
Upgrade all core cryptographic dependencies to their latest versions:

Dependencies:
- digest: 0.10 to 0.11
- elliptic-curve: 0.13 to 0.14
- hkdf: 0.12 to 0.13
- hmac: 0.12 to 0.13
- rand: 0.8 to 0.10
- rand_chacha: 0.3 to 0.10
- sha2: 0.10 to 0.11
- getrandom: 0.2 to 0.4 (WASM)
- ml-kem: 0.3.0-rc.0 to 0.3
- ecdsa: 0.16 to 0.17.0-rc.23
- rfc6979: 0.4 to 0.6 (now internal to ecdsa)
- p256/p384/p521: 0.13 to 0.14.0-rc.15
- curve25519-dalek: 4 to 5.0.0-rc
- ed25519-dalek: 2 to 3.0.0-rc
- cryptoki: 0.9 to 0.12
- rustyline: 17 to 18
- scrypt: 0.11 to 0.12
- voprf replaced by voprf-vx 1.0.0-pre.0

Migration changes:
- generic-array 0.14 to 1.4 with hybrid-array 0.4 interop
- ArrayLength<u8> to ArrayLength (generic-array 1.x)
- Added ConcatExt trait to disambiguate from [T]::concat
- Replaced Hmac with SimpleHmac for digest 0.11 compatibility
- Added OutputSize<H>: ArrayLength bounds throughout Hash trait
- Converted hybrid_array::Array between GenericArray at API boundaries
- Updated GroupEncoding Repr bound to hybrid_array::Array
- ECDSA sign now uses ecdsa::hazmat::sign_prehashed_rfc6979
- Removed direct rfc6979 dependency (handled by ecdsa internally)
- Replaced bincode with postcard for no_std serialization
- Re-exported hybrid_array from crate root

Other changes:
- Renamed crate to opaque-vx
- Increased MSRV to 1.89
- Added cryptography to Cargo.toml categories
- Removed Facebook-specific contributions from CONTRIBUTING.md
- Removed v3 to v4 migration test
- Removed unstable rustfmt configurations for stable compatibility

Reviewed-on: #1
Co-authored-by: UneBaguette <[email protected]>
Co-committed-by: UneBaguette <[email protected]>
2026-07-01 11:52:12 +02:00
breakingbread 5e2ba86643 Delete directory '.github' 2026-06-27 05:39:01 +02:00
Kevin LewiandGitHub bc588b149e Upgrade ml-kem from 0.2 to 0.3.0-rc.0 (#421) 2026-03-26 17:17:13 -07:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
b20d78c074 Bump actions/cache from 4 to 5 (#417)
Bumps [actions/cache](https://github.com/actions/cache) from 4 to 5.
- [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/v4...v5)

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

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-22 15:59:54 -08:00
Kevin LewiandGitHub 2dee6fbc01 Fixing clippy issues (#418) 2026-01-22 15:37:21 -08:00
Kevin LewiandGitHub a85a7bea8f Publishing v4.1.0-pre.1 (#415) 2025-11-18 10:28:27 -08:00
Kevin LewiandGitHub 22bcbfc821 Adding ml-kem re-export (#414) 2025-11-17 21:01:18 -08:00
Kevin LewiandGitHub 9b5eef4f8f Publishing v4.1.0-pre.0 (#413) 2025-11-12 13:49:39 -08:00
Kevin LewiandGitHub 8afec46637 Adding TripleDhKem key exchange (#404) 2025-11-08 14:21:51 -08:00
Kevin LewiandGitHub 67297dc73a Moving shared functionality out of TripleDh key exchange (#405) 2025-11-08 13:25:57 -08:00
Kevin LewiandGitHub 6d2af37a28 Deleting extraneous file (#412) 2025-11-04 11:38:21 -08:00
Kevin LewiandGitHub 96498709f4 Fixing rand dependency exporting (#411) 2025-11-03 14:31:59 -08:00
Kevin LewiandGitHub 75fe4cdddb Fixing docs build + publishing 4.0.1 (#409) 2025-10-30 17:09:53 -07:00
Kevin LewiandGitHub ed5e7cf116 Publishing v4.0.0 (#407) 2025-10-23 16:28:30 -07:00
Kevin LewiandGitHub 4dae85b3a9 Resolving zeroize_derive old version issue (#406) 2025-10-22 00:27:29 -07:00
Kevin LewiandGitHub af220c6d00 Fixing generic-array dependency (#402) 2025-10-15 15:05:51 -07:00
Kevin LewiandGitHub 79e4eacc40 Making full test vector generation deterministic (#398) 2025-10-13 15:05:15 -07:00
Kevin LewiandGitHub c94f942ed7 Fixing clippy/lint errors (#396) 2025-09-18 13:15:32 -07:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
3f8026d30e Update criterion requirement from 0.5 to 0.7 (#394)
Updates the requirements on [criterion](https://github.com/bheisler/criterion.rs) to permit the latest version.
- [Changelog](https://github.com/bheisler/criterion.rs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bheisler/criterion.rs/compare/0.5.0...0.7.0)

---
updated-dependencies:
- dependency-name: criterion
  dependency-version: 0.7.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-15 20:48:32 -07:00
daxpeddaandGitHub 33464543c1 Add migration guide to changelog (#393) 2025-09-09 00:25:04 -07:00
Kevin LewiandGitHub a1624a92dd Re-exporting argon2 and generic_array (#387) 2025-09-08 23:32:58 -07:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
6593833622 Update rustyline requirement from 15 to 17 (#391)
Updates the requirements on [rustyline](https://github.com/kkawakam/rustyline) to permit the latest version.
- [Release notes](https://github.com/kkawakam/rustyline/releases)
- [Changelog](https://github.com/kkawakam/rustyline/blob/master/History.md)
- [Commits](https://github.com/kkawakam/rustyline/compare/v15.0.0...v17.0.1)

---
updated-dependencies:
- dependency-name: rustyline
  dependency-version: 17.0.1
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-08 14:50:58 -07:00
226fe0ea7a Updating test vectors to RFC 9807 (#386)
* Updating to RFC 9807

* Update CHANGELOG.md

Co-authored-by: daxpedda <[email protected]>

* Update CHANGELOG.md

Co-authored-by: daxpedda <[email protected]>

* Update CHANGELOG.md

Co-authored-by: daxpedda <[email protected]>

---------

Co-authored-by: daxpedda <[email protected]>
2025-09-08 11:27:47 -07:00
daxpeddaandGitHub 8f9d7ec125 Update to Clippy v1.89 (#385) 2025-09-08 04:08:23 -07:00
daxpeddaandGitHub c04fb97b5c Remove Zeroize Tests (#381)
* Remove Zeroize tests

* Remove `Zeroize` requirements from `Group::Pk`

* Remove `Copy` requirements from `Group::Pk`

* Change to `ZeroizeOnDrop` requirements for `Group::Sk`

* Add note why we don't use `elliptic_curve::PublicKey`
2025-07-17 13:15:30 -07:00
daxpeddaandGitHub 1b6633cdcc Move Serde De/Serialization to Group Implementation (#380)
* Move Serde De/Serialization to `Group` implementation

* Clean up Serde formats

* Fix typo
2025-07-14 19:54:43 -07:00
daxpeddaandGitHub 5b492aedbf Update MSRV to v1.85 and edition to 2024 (#383) 2025-07-10 12:55:41 -07:00
daxpeddaandGitHub 8ee35498ea Publicly Expose trait KeyExchange (#379)
* Clean up types used in `trait KeyExchange`

* Expose `trait KeyExchange` publicly
2025-06-24 15:17:29 -07:00
daxpeddaandGitHub 3777ee680a Only store dummy public key (#374) 2025-05-20 12:49:11 -07:00
daxpeddaandGitHub fdf6a1103b Add missing copyright header (#382) 2025-05-20 12:48:30 -07:00
daxpeddaandGitHub bebd2c605b SIGMA-I Key Exchange (#378)
* Move `KeGroup` to `KeyExchange::Group`

- Introduce `KeyExchange::Hash`, which separates the OPRF hash from the one used in `KeyExchange`.
- Remove `De/Serialize` requirement on key exchange messages and states, which forced a lot of where bounds on downstream users.
- Rename `KeGroup` to `Group`.
- Replace `D` generic for hash with `H`.

* Use `voprf::derive_key()` directly

* Implement SIGMA-I key exchange

* Improve `KeyExchange` for SIGMA-I and Ed25519

* Implement EdDSA

* Un-qualify some method calls

* SIGMA-I: only include client identity in client mac

* SIGMA-I: include server mac in client signature

* Expose key exchange types in `crate` & move modules

* Implement Ed25519ph

* Document `ed25519` crate feature

* Remove `ristretto255-voprf` crate feature

* Adjust CI crate feature testing

* Fix Rustdoc

* Remove unnecessary generic parameters from SIGMA-I

* Properly mark to-do's with TODO

* Assorted fixes

* SIGMA-I: include context in signature

* SIGMA-I: include identifiers in signature

* Merge `ServerLoginStart/FinishParameters`

* Re-export more necessary types

* More carefully expose types

* Add ECDSA test

* SIGMA-I: share context hashing

* De-duplicate client static public key storage

* Hide `KeyExchange` better

* Use the correct hash in the root documentation

* Bump `derive-where`

* Format documentation examples a bit further

* Add remote OPRF seed documentation

* Rename `deserialize_key_pair` to `deserialize_take_key_pair`

* Add more key tests

* Remove `SharedSecret` trait

* SIGMA-I refactor message API

* Share more implementation between 3DH and SIGMA-I

* Remove unnecessary zero scalar check for Curve25519

* Use correct hash in test

* Add some more TODOs

* Exclude `tests` folder from Cargo publishing

* Enable missing dependencies

* Use right crate for testing Ed25519

* Remove unnecessary `Sized` constraints

* Remove unnecessary `ecdsa` crate features

* Move signature de/serialization to trait methods

* Nit: move import to appropriate location

* Add warning to SIGMA-I
2025-05-19 13:56:25 -07:00
daxpeddaandGitHub 58b4d746c0 Enable remote OPRF seed support (#373) 2025-05-05 04:12:54 -07:00
daxpeddaandGitHub b16cf8ce05 Enable curve25519-dalek/serde (#375) 2025-04-28 12:48:06 -07:00
daxpeddaandGitHub 560de5b718 Always create dummy record (#376) 2025-04-28 12:47:39 -07:00
daxpeddaandGitHub 27c6d4658b Add copyright header to remote_key test (#377) 2025-04-28 12:46:58 -07:00
daxpeddaandGitHub d324584d79 Rework SecretKey API to facilitate async (#371)
* Rework `SecretKey` API to facilitate async

* Remove left-over constraints
2025-04-22 00:08:17 -07:00
daxpeddaandGitHub 6b69e93dc9 Bump MSRV to v1.83 (#370)
* Fix Clippy warnings for Rust v1.86

* Bump MSRV to v1.83
2025-04-15 13:31:37 -07:00
Nik GrafandGitHub ff3a8b960d Update Readme link (#368) 2024-10-25 15:06:50 -07:00
Kevin LewiandGitHub df8e61d24b Publishing v3.0.0 (#367) 2024-10-09 22:13:13 -07:00
CynthiaandGitHub 94d9c563a4 chore!: align to draft 16, update dependencies (#365)
* chore!: align to draft 16, update dependencies

* chore: fix toml formatting
2024-09-23 21:28:40 -07:00
Kevin LewiandGitHub 4e525560c7 Publishing v3.0.0-pre.5 (#364) 2024-09-18 14:58:35 -07:00
Luca BrunoandGitHub a21678e969 docs: add details for client login final step (#358)
This tweaks the documentation on the main module, in order to
add some details on the outcome of the client login final step.
In particular, it clarifies the result of `ClientLogin::finish()`
both on success and on errors and it adds some intra-crate links
to the relevant structures and fields.
2024-09-18 13:04:14 -07:00
Kevin LewiandGitHub 066f88f434 Updating dependencies (#360) 2024-09-16 18:01:45 -07:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
7eb363f571 Bump actions/cache from 3 to 4 (#354)
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] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-17 18:31:49 -08:00