Timing Attack Vulnerability in libsecp256k1
Summary
CVE-2019-25003: libsecp256k1 contains side-channel timing attack. Affects libsecp256k1 versions < 0.3.1. Fixed in 0.3.1. How to fix ↓
Check if this vulnerability affects your application
Upload a manifest or SBOM and we'll show whether you're affected, plus every other risky package in the same scan.
No signup required · Results in about 60 seconds
Background
libsecp256k1 is a library for efficient elliptic curve operations on the secp256k1 curve, which is used in the Bitcoin and Ethereum cryptocurrencies. It provides functions for key generation, signing, and verification. However, versions prior to 0.3.1 contain a vulnerability that allows for a side-channel timing attack.
Vulnerability Detail
The vulnerability in libsecp256k1 arises from the fact that the Scalar::check_overflow function is not executed in constant time. This means that an attacker can potentially leak information by measuring the timing of the execution. By carefully measuring the time taken for certain operations, an attacker can infer sensitive information such as private keys or other cryptographic secrets. This timing attack can be performed remotely without requiring any special privileges.
How To Fix
Latest published version: 0.7.2 as of 23 Oct 2026
Upgrading to it may include breaking changes; the version below is the minimum fixed release for this vulnerability.
If you need the minimum change
0.3.1
This is the first release that contains the fix.
Tip — Not sure which version your app runs? Vulert can match this fix to it. Scan free →
Workaround
There is no known workaround for this vulnerability. It is necessary to upgrade to the fixed version of libsecp256k1 to mitigate the risk of a timing attack.
Conclusion
The timing attack vulnerability in libsecp256k1 can potentially lead to the leakage of sensitive information, such as private keys, through a side-channel timing attack. To mitigate this risk, it is crucial to upgrade to version 0.3.1 or later of libsecp256k1. For further assistance and support in vulnerability remediation, please contact DevNack.com.
See every vulnerability recorded for libsecp256k1 →
FAQ
libsecp256k1 is a library for efficient elliptic curve operations on the secp256k1 curve, which is used in cryptocurrencies like Bitcoin and Ethereum.
A timing attack is a type of side-channel attack where an attacker measures the time taken by certain operations to infer sensitive information.
The timing attack in libsecp256k1 exploits the fact that the Scalar::check_overflow function is not executed in constant time, allowing an attacker to measure the timing and infer sensitive information.
Yes, the timing attack can be performed remotely without requiring any special privileges.
No, there is no known workaround. It is necessary to upgrade to the fixed version of libsecp256k1.
Related vulnerabilities
Recent vulnerabilities recorded for libsecp256k1.