pull down to refresh

libsecp256k1 v0.6.0 is out! Featuring the highly anticipated musig module and other improvements.
In particular, the API functions now use a significantly more robust method to clear secrets from the stack before returning.
0.6.0 - 2024-11-04 Added New module musig implements the MuSig2 multisignature scheme according to the BIP 327 specification.
See: Header file include/secp256k1_musig.h which defines the new API. Document doc/musig.md for further notes on API usage. Usage example examples/musig.c. New CMake variable SECP256K1_APPEND_LDFLAGS for appending linker flags to the build command.
Changed API functions now use a significantly more robust method to clear secrets from the stack before returning. However, secret clearing remains a best-effort security measure and cannot guarantee complete removal. Any type secp256k1_foo can now be forward-declared using typedef struct secp256k1_foo secp256k1_foo; (or also struct secp256k1_foo; in C++). Organized CMake build artifacts into dedicated directories (bin/ for executables, lib/ for libraries) to improve build output structure and Windows shared library compatibility.
Removed Removed the secp256k1_scratch_space struct and its associated functions secp256k1_scratch_space_create and secp256k1_scratch_space_destroy because the scratch space was unused in the API.