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

So far we have manually checkable proofs for the field mul and square inner loops, and machine verification (via frama-c) of overflow-freeness for 10x26 (5x52 requires hacking on frama-c to...

assurance

At the last CoreDev meeting the idea of creating a libsecp Silent Payments (BIP352) module for handling the low-level parts [was brought up](https://btctranscripts.com/bitcoin-core-dev-tech/2023-09/libsecp256k1-meeting/). I've spent some time recently studying the...

feature

I had to restart this job because make failed for Valgrind MacOS: https://github.com/bitcoin-core/secp256k1/actions/runs/6777069897/job/18419944841?pr=1437 We've seen other (different) random build issues before: https://github.com/LouisBrunner/valgrind-macos/issues/26 We could print the logs The make log...

ci

Solves one item in https://github.com/bitcoin-core/secp256k1/issues/1392.

assurance
ci
side-channel

This PR adds a tool that verifies every header whether it is self-contained. As an example, the `field_5x52.h` and `field_10x26.h` headers have been refactored to get self-contained.

ci
build
refactor/smell
meta/development

Building master (b10ddd2bd2bdce9ca8f2d4733636a9d9e7ac3da1): ```bash # x86_64-w64-mingw32-gcc (GCC) 12-win32 ./autogen.sh ./configure --host=x86_64-w64-mingw32 CFLAGS="-flto" LDFLAGS="-flto" make -j9 src/secp256k1.c: In function 'secp256k1_context_create': src/secp256k1.c:149:1: warning: visibility attribute not supported in this configuration; ignored [-Wattributes]...

build

Thanks for the previous review. This PR: Added a function to construct valid field elements with random magnitude. Added the constraint in each field operation test based on the magnitude...

assurance

We have a C++ job that checks that all headers compile on their own, but of course, we should test this on C also... The example binaries cover some headers,...

assurance
ci
build

Why do `secp256k1_keypair_*` functions have `SECP256K1_WARN_UNUSED_RESULT` if they always return 1 ? The only exception is `secp256k1_keypair_create`.

user-documentation
needs-changelog
refactor/smell

Closes the last item in the "Affecting both build systems" group in https://github.com/bitcoin-core/secp256k1/issues/1235. Draft for now, as it is based on https://github.com/bitcoin-core/secp256k1/pull/1291.

user-documentation
build