CHANGELOG (1978B)
1 # Changelog 2 3 - 0.5.0 (2025-12-21) 4 * We get a significant upgrade to all functionality by pulling in the 5 ppad-fixed library for large unsigned and Montgomery-form integers. 6 Constant-time and allocation properties are made much more rigorous 7 across the board, as we no longer depend on 'Integer' whatsoever. 8 9 This version also improves performance radically throughout. A 10 summary of the speedups achieved: 11 12 sign_schnorr: ~7.1x speedup 13 verify_schnorr: ~4.5x speedup 14 sign_ecdsa: ~1.5x speedup 15 verify_ecdsa: ~4.5x speedup 16 17 - 0.4.0 (2025-06-21) 18 * Scalar multiplication, signing, verifying, and ECHD functions are now 19 all total, returning 'Nothing' when supplied with invalid inputs. 20 * Adds a group element check to 'mul_wnaf'. 21 22 - 0.3.0 (2025-03-14) 23 * Adds 'ecdh' for computing ECDH secrets, any given secret being the 24 SHA256 hash of the x-coordinate of the appropriate secp256k1 point. 25 26 - 0.2.2 (2025-02-16) 27 * Exports the secp256k1 "point at infinity" as _CURVE_ZERO. 28 29 - 0.2.1 (2024-12-18) 30 * Adds 'serialize_point' for compressed-format serialization of 31 secp256k1 points. 32 33 - 0.2.0 (2024-11-08) 34 * Adds wNAF ("w-ary non-adjacent form") scalar multiplication, as 35 well as fast 'sign' and 'verify' variants for Schnorr and ECDSA 36 (disambiguated by a trailing apostrophe) that make use of it. 37 38 Each wNAF-powered function requires a 'Context' consisting of 39 precomputed secp256k1 generator multiples; one can be gotten via 40 'precompute'. 41 42 Note that the non-wNAF-powered sign and verify functions have 43 incurred a slight performance decrease (on the order of tens to 44 hundreds of microseconds) as a result. 45 46 * Adds 'parse_sig' for parsing compact signatures. 47 48 * Adds a dependency on the 'primitive' library (already transitively required 49 via 'ppad-hmac-drbg'). 50 51 - 0.1.0 (2024-10-19) 52 * Initial release, supporting public key derivation and Schnorr & 53 ECDSA signatures on secp256k1. 54