curve25519-dalek-source/ed25519-dalek/CHANGELOG.md
Rob Ede 6dc7a1c7c5
Verify by digest update + StreamVerifier (#735)
* Replace recompute_R with a separate RCompute

This struct can be use to implement verifiers with incremental updates

* Add raw_sign_byupdate and raw_verify_byupdate

These allow signing/verifying a non-prehashed message
but don't require the whole message to be provided at once.

* Tests for raw_sign_byupdate, raw_verify_byupdate

* Add StreamVerifier

* Make StreamVerifier use RCompute

This allows it to use the same implementation as non-stream signature
verification.

* Guard StreamVerifier behind hazmat feature

* docs: disambiguate unsafety

Co-authored-by: Tony Arcieri <bascule@gmail.com>

* chore: relax F bounds on raw_verify_byupdate

* chore: remove raw_sign_byupdate and raw_verify_byupdate

* chore: address clippy lints within new code

* docs: fixup changelog

* test: invert new chunked test

* chore: revert raw_sign

---------

Co-authored-by: Matt Johnston <matt@ucc.asn.au>
Co-authored-by: Tony Arcieri <bascule@gmail.com>
2025-06-02 18:30:57 -04:00

2.1 KiB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

Entries are listed in reverse chronological order per undeprecated major series.

Unreleased

  • Add SigningKey::verify_stream(), and VerifyingKey::verify_stream()

2.x series

2.1.1

  • Fix nightly SIMD build

2.1.0

  • Add SigningKey::to_scalar_bytes for getting the unclamped scalar from a signing key
  • Loosened signature dependency to allow version 2.2

2.0.0

Breaking changes

  • Bump MSRV from 1.41 to 1.60.0
  • Bump Rust edition
  • Bump signature dependency to 2.0
  • Make digest an optional dependency
  • Make zeroize an optional dependency
  • Make rand_core an optional dependency
  • curve25519 backends are now automatically selected
  • curve25519 backends are now overridable via cfg instead of using additive features
  • Make all batch verification deterministic remove batch_deterministic (PR #256)
  • Rename KeypairSigningKey and PublicKeyVerifyingKey
  • Remove default-public ExpandedSecretKey API (PR #205)
  • Make hazmat feature to expose ExpandedSecretKey, raw_sign(), raw_sign_prehashed(), raw_verify(), and raw_verify_prehashed()

Other changes

  • Add Context type for prehashed signing
  • Add VerifyingKey::{verify_prehash_strict, is_weak}
  • Add pkcs feature to support PKCS #8 (de)serialization of SigningKey and VerifyingKey
  • Add fast feature to include basepoint tables
  • Add tests for validation criteria
  • Impl DigestSigner/DigestVerifier for SigningKey/VerifyingKey, respectively
  • Impl Hash for VerifyingKey
  • Impl Clone, Drop, and ZeroizeOnDrop for SigningKey
  • Remove rand dependency
  • Improve key deserialization diagnostics