secp256k1 icon indicating copy to clipboard operation
secp256k1 copied to clipboard

Optimized C library for EC operations on curve secp256k1

Results 182 secp256k1 issues
Sort by recently updated
recently updated
newest added

This adds sign-to-contract and anti-exfil protocol functionality to the schnorrsig module. It is based on the same functions that already exist for ECDSA here: https://github.com/ElementsProject/secp256k1-zkp/blob/d22774e248c703a191049b78f8d04f37d6fcfa05/include/secp256k1_ecdsa_s2c.h Some commits and functions were...

feature

This change eases the use of alternate build systems by moving the variables in src/libsecp256k1-config.h to compiler macros for each invocation, preventing duplication of these variables for each build system....

We use `ecmult_gen` to compute point multiplications $nG$ with the generator. This is used for computing public keys and for computing public nonces generation in ECDSA and Schnorr signatures. One...

I wonder if I could change something so that the implementation is for the curve $y^2=x^3+5$ other than secp256k1 $y^2=x^3+7$. Is that possible?

"Intel and ARM recently published documentation that says that no instructions are guaranteed to be constant-time with respect to their data operands, unless a "data independent timing" flag in the...

secp256k1 is available as a port in [vcpkg](https://github.com/microsoft/vcpkg), a C++ library manager that simplifies installation for secp256k1 and other project dependencies. Documenting the install process here will help users get...

When looking into binary compatibility (see #1055, #964), I found this nice website which describes best practices and open source tools for checking binary compatibility: https://abi-laboratory.pro This may be something...

### Overview This PR adds support for batch verifying Schnorr signatures and tweaked x-only public key checks. It is based on the work of @jonasnick in #760. ### Batch Verification...

feature
performance

The new `contrib/symbol-check.py` aims to ensure that only expected symbols are exported in the `secp256k1` shared library. The script itself stems from Bitcoin Core's [`contrib/devtools/symbol-check.py`](https://github.com/bitcoin/bitcoin/blob/master/contrib/devtools/symbol-check.py) and bitcoin/bitcoin#25020. It uses the...

This was missed in 31ba40494428dcbf2eb5eb6f2328eca91b0b0746 because older versions of clang did not complain about it. But clang-17, at least, does. The array-as-a-param makes this annoying because `sizeof(l)` is not helpful....