0.6.8

Date: December 12, 2023.

  • Bump MSRV to 1.70.
  • Add Claims::set_expires_in() (#107, credits: @franklx).

0.6.7

Date: June 10, 2023.

Changelog:

  • Add security policy.
  • Add Claims::new_expires_in() (#96).

0.6.6

Date: March 4, 2023.

Changelog:

  • Update license year to 2023.
  • Bump p384 to 0.13.0
  • Bump MSRV to 1.65.0
  • Switch from actions-rs/tarpaulin to cargo-tarpaulin in CI.

0.6.5

Date: December 14, 2022.

Changelog:

  • SymmetricKey, AsymmetricSecretKey and AsymmetricKeyPair now implement Clone.

0.6.4

Date: November 17, 2022.

Changelog:

  • AsymmetricSecretKey now re-computes the public key from the secret seed to check if they match. If they don't an error is returned. Because we use ed25519-compact crate for Ed25519, if an all-zero seed is used, the creation of AsymmetricSecretKey will panic.

0.6.3

Date: October 15, 2022.

Changelog:

  • Add optional serde support for keys + PASERK ID, to be de/serialized from/to PASERK strings. Also introducing a new optional feature serde (see #26, by @SanchithHegde)
  • Clippy improvements to tests (see #69, by @SanchithHegde)
  • Update ed25519-compact to 2.0.2 (see #72)

0.6.2

Date: September 23, 2022.

Changelog:

  • Fix ed25519-compact imports that broke build after the crate bumped to 1.0.13+

0.6.1

Date: September 20, 2022.

Changelog:

  • Bump MSRV to 1.59.0
  • clippy fixes
  • Add rust-version field to Cargo.toml
  • Update copyright year to 2022

0.6.0

Date: June 20, 2022.

Changelog:

  • PASERK operations are now implemented for AsymmetricSecretKey<V2> and AsymmetricSecretKey<V4> instead of AsymmetricKeyPair<V2> and AsymmetricKeyPair<V4>, respectively
  • All sign() operations with public tokens now take only the secret key
  • V2 and V4 token's AsymmetricSecretKey<> are now defined to contain both the Ed25519 secret seed and the public key (see https://github.com/MystenLabs/ed25519-unsafe-libs)
  • TryFrom<AsymmetricSecretKey<>> for AsymmetricPublicKey<> is now provided for V2 and V4 as well

0.5.0

Date: June 4, 2022.

Changelog:

  • Bump MSRV to 1.57.0
  • Implement v3.public tokens (#40)
  • Introduce separate crate-features for each version and one for PASERK: v2, v3, v4 and paserk. std, v4 and paserk are enabled by default
  • Add support for the PASERK ID operation (#40)
  • Stricter permissions for GH Actions workflows (#43)
  • Add Generate trait and implement this for all key-types, removing also SymmetricKey::gen() (#45)
  • Switch from ed25519-dalek to ed25519-compact (#48)
  • Add new types token::UntrustedToken and token::TrustedToken which are now used by verify()/decrypt() operations. These allow extracting parts of tokens before and after verification (#47)
  • Version structs previously available in keys:: have been moved to a new version:: module
  • Add Footer type that makes it easier to create JSON-encoded footers (#52)
  • PASERK deserialization of keys now takes &str instead of String (#53)
  • Rename Error::Base64Decoding -> Error::Base64

0.4.2

Date: November 27, 2021.

Changelog:

  • Update Orion to 0.17 (#39)
  • Bump MSRV to 1.52

0.4.1

Date: November 11, 2021.

Changelog:

  • Enable getrandom/js feature and test wasm32-unknown-unknown in CI (#37)

0.4.0

Date: October 25, 2021.

Changelog:

  • [Security fix]: Switched from chrono to time crate (#30)
  • Error now implements std::error::Error (#27) (by @not-my-profile)
  • Errors enum has be renamed to Error and “error” postfixes have been trimmed from variants (#33)
  • SymmetricKey, AsymmetricPublicKey and AsymmetricSecretKey have been made generic over their versions (#31) (by @not-my-profile)
  • Add support for local, public and secret PASERK types for keys (#24)

0.3.0

Date: September 22, 2021.

Changelog:

  • Implement version 4 of the PASETO specification
  • New SymmetricKey, AsymmetricPublicKey and AsymmetricSecretKey now used throughout the API of both version 2 and 4 (#14)
  • Use new test vectors from https://github.com/paseto-standard/test-vectors
  • Empty payloads are no longer allowed (see https://github.com/paseto-standard/paseto-spec/issues/17) and Errors::EmptyPayloadError has been added
  • New Claims type to easily define claims for tokens and ClaimsValidationRules to validate such claims.
  • New std feature which is enabled by default. This means, that to be no_std, pasetors has to be declared without default features.
  • New local/public API which uses the latest version, and automatically handles validation of Claims.

0.2.0

Date: June 2, 2021.

Changelog:

  • Remove Csprng trait from public API and use getrandom instead
  • Update Orion to 0.16

0.1.1

Date: March 21, 2021.

Changelog:

  • Switch from base64 to ct-codecs to provide constant-time Base64 encoding/decoding

0.1.0 - Initial release

Date: October 12, 2020.