Changelog

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

The format is based on Keep a Changelog.

Unreleased

[0.4.4] - 2021-03-04

Added

  • Exposed getters for RSA public exponent and modulus

[0.4.3] - 2020-03-26

Added

  • Exposed MD5 digest and HMAC in the insecure module.

Changed

  • Documentation on docs.rs now includes all items behind feature flags.

[0.4.2] - 2019-10-04

Fixed

  • Fixed issue where 0.4.1 was released without updating BoringSSL symbols.
  • Fixed issue caused by a bad interaction between #[derive(Clone)] and #[deprecated].

[0.4.1] - 2019-09-27

Added

  • hmac::Hmac now implements Clone and std::hash::Hasher, allowing it to be used with any type that implements std::hash::Hash.
  • hash::Hasher now similarly implies Clone and std::hash::Hasher.

[0.4.0] - 2019-09-25

Added

  • public::rsa now supports RSA-PKCS1v1.5 signing (behind the rsa-pkcs1v15 feature flag).
  • Added bytes module guarded by the bytes feature, containing constant_time_eq.

Changed

  • build.rs implements symbol name scraping natively, and no longer relies on BoringSSL's read_symbols.go.
  • Minimum required Rust version raised to 1.36
  • Minimum required Go version lowered to 1.10
  • Moved rand_bytes to bytes::rand.
  • Removed rand-bytes feature in favor of the new feature bytes.

Fixed

  • build.rs no longer respects $GOPATH, instead it always uses the go.mod from the vendored boringssl.

[0.3.0] - 2019-02-20

Added

  • Added public::rsa module which supports RSA-PSS signing.

Changed

  • In the public module, functions to parse and marshal DER-encoded public/private keys have been moved from bare functions to methods on the DerPublicKey and DerPrivateKey traits.
  • In the public::ec module, functions to parse and marshal DER-encoded public/private keys as the EcPubKeyAnyCurve and EcPrivKeyAnyCurve types have been moved from bare functions to methods on those types.
  • The public::Signature::verify method has been renamed to is_valid to make the meaning of its return value more self-evident.
  • The public::ec module added experimental support for ECDSA-SHA512 under the experimental-sha512-ec feature.