Skip to content

Releases: 0xMiden/crypto

v0.22.6

13 Mar 16:49
cd03c5e

Choose a tag to compare

What's Changed

  • Added Signature::from_der() for ECDSA signatures over secp256k1 (#842).
  • Added PublicKey::from_der() for ECDSA public keys over secp256k1 (#855).

v0.22.5

12 Mar 08:53
869d52c

Choose a tag to compare

  • Expose StorageError and SubtreeUpdate as prep. to externalize the LargeSmt RocksDB backend (#850).

v0.23.0

11 Mar 23:19
48b049e

Choose a tag to compare

  • Replaced Subtree internal storage with bitmask layout (#784).
  • [BREAKING] PartialMmr::open() now returns Option<MmrProof> instead of Option<MmrPath> (#787).
  • [BREAKING] Refactored BLAKE3 to use Digest<N> struct, added Digest192 type alias (#811).
  • [BREAKING] Added validation to PartialMmr::from_parts() and Deserializable implementation, added from_parts_unchecked() for performance-critical code (#812).
  • [BREAKING] Removed hashbrown dependency and hashmaps feature; Map/Set type aliases are now tied to the std feature (#813).
  • [BREAKING] Renamed NodeIndex::value() to NodeIndex::position(), NodeIndex::is_value_odd() to NodeIndex::is_position_odd(), and LeafIndex::value() to LeafIndex::position() (#814).
  • Fixed LargeSmtForest::truncate to remove emptied lineages from non_empty_histories (#818).
  • [BREAKING] Fixed OOMs in Merkle/SMT deserialization (#820).
  • Fixed SmtForest to remove nodes with zero reference count from store (#821).
  • Cross-checked RPO test vectors against the Python reference implementation after state layout change (#822).
  • Fixed tuple min_serialized_size() to exclude alignment padding, fixing BudgetedReader rejecting valid data (#827).
  • Fixed possible panic in XChaCha::decrypt_bytes_with_associated_data and harden deserialization with fuzzing across 7 new targets (#836).
  • Added Signature::from_der() for ECDSA signatures over secp256k1 (#842).
  • [BREAKING] Added info context field to secret box, bind IES HKDF info to a stable context string, scheme identifier, and ephemeral public key bytes. (#843).
  • Use read_from_bytes_with_budget() instead of read_from_bytes for deserialization from untrusted sources, setting the budget to the actual input byte slice length. (#846).
  • [BREAKING] Removed PartialEq/Eq for AEAD SecretKey in non-test builds, fix various hygiene issues in dealing with secret keys (#849).
  • Added PublicKey::from_der() for ECDSA public keys over secp256k1 (#855).
  • [BREAKING] Fixed NodeIndex::to_scalar_index() overflow at depth 64 by returning Result<u64, MerkleError> (#865).
  • [BREAKING] Removed RpoRandomCoin and RpxRandomCoin and introduced a Poseidon2-based RandomCoin (#871).
  • Hardened MerkleStore deserialization and fuzz coverage (#878).
  • [BREAKING] Upgraded Plonky3 from 0.4.2 to 0.5.0 and replaced p3-miden-air, p3-miden-fri, and p3-miden-prover with the unified p3-miden-lifted-stark crate. The stark module now re-exports the Lifted STARK proving system from p3-miden.

v0.22.4

03 Mar 23:39
467484b

Choose a tag to compare

  • Make SmtLeaf::get_value public (#872).

v0.19.8

02 Mar 17:29
11cb33e

Choose a tag to compare

  • Added PublicKey::from_der() for ECDSA public keys over secp256k1 (#855).

v0.19.7

26 Feb 20:13
df02075

Choose a tag to compare

  • Exposed StorageError and SubtreeUpdate as prep. to externalize the LargeSmt RocksDB backend (#850).
  • Fixed SmtStore corruption issue on insertion of empty tree roots (#853).

v0.22.3

24 Feb 09:12
97e4d92

Choose a tag to compare

  • Refactored to introduce a unified Felt type for on-chain and off-chain code (#819).
  • Changed Ord for Word to use lexicographic ordering (#847).
  • Added From<{u8, u16, u32}> for Felt and TryFrom<u64> for Felt (#848).

v0.19.6

24 Feb 01:34
d297153

Choose a tag to compare

  • Added Signature::from_der() for ECDSA signatures over secp256k1 (#842).

v0.19.5

20 Feb 08:39
235f12b

Choose a tag to compare

  • Backported LargeSmtForest with its InMemory backend (#834).
  • Fixed PartialMmr::add() not clearing track_latest flag after peak merges, which could result in incorrect tracking state (#835).

v0.22.2

02 Feb 02:09
7847752

Choose a tag to compare

  • Re-exported p3_keccak::VECTOR_LEN.