Skip to content

Changelog

All notable changes to dash-pkc will be documented in this file.

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

Unreleased

Added

  • Bls{Public,Secret}Key::negate, BlsSecretKey::mul_tweak, EcdsaPublicKey::negate and EcdsaSecretKey::mul_tweak.

Changed

  • BlsScheme::sk_to_bytes returns Zeroizing<[u8; 32]> instead of a bare array. Code that binds the result as [u8; 32] must dereference it.
  • EcdsaSecretKey::negate takes &self and returns the negated key as Result<Self, EcdsaError> instead of negating in place and returning (), matching the other tweaks. A call that drops the return value still compiles, warned of only by unused_must_use, but leaves the key as it was. Callers must bind the result, e.g. sk = sk.negate()?.
  • The following types serialize as raw bytes for machine-readable formats, following changes to dash-types and dash-num. JSON and other human-readable formats are unaffected by this change.

    BlsPkBytes, BlsSigBytes, BlsPkHash, BlsShareId, BlsIes{Blob,Multi}Bytes, BlsPublicKey, BlsSignature, Bls{Pk,Sig}Share, BlsIes{Blob,Multi}, EcdsaPkBytes, EcdsaSigBytes, EcdsaRecSigBytes, EcdsaPkHash, EcdsaPublicKey, EcdsaSignature, EcdsaRecSignature, EddsaPkBytes, EddsaSigBytes, EddsaPkHash, EddsaPublicKey, EddsaSignature.

0.1.0-beta - 2026-09-15

  • Initial release.