CVE-2020-12607: fastecdsa - Mishandling of Point at Infinity in ECDSA Implementation

fastecdsa Updated 02 Oct 2025

Summary

02/06/2020
Yes i
High
7.5

CVE-2020-12607: An issue was discovered in fastecdsa before 2.1.2. Affects fastecdsa across 4 version ranges.

< 2.1.2 < 4a16daeaf139be20654ef58a9fe4c79dc030458c < 7b64e3efaa806b4daaf73bb5172af3581812f8de < e592f106edd5acf6dacedfab2ad16fe6c735c9d1

Fixed in 4a16daeaf139be20654ef58a9fe4c79dc030458c. How to fix ↓

Free scan

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.

Check my app free

No signup required · Results in about 60 seconds

Upload your dependency manifest or SBOM

Drag & drop your file here or

Java Javascript PHP Python Go Rust Ruby Dart C/C++ Elixir CycloneDX SPDX

Upload a supported dependency manifest or SBOM. No installation or source-code access required.

See supported files and SBOM formats
SBOM sbom.json · bom.json · bom.xml · *.spdx.json · *.cdx.json · *.cdx.xml
Java pom.xml · gradle.lockfile · buildscript-gradle.lockfile
Javascript package-lock.json · yarn.lock · pnpm-lock.yaml
PHP composer.lock
Python poetry.lock · requirements.txt · Pipfile.lock
Go go.mod
Rust Cargo.lock
Ruby Gemfile.lock
Dart pubspec.lock
C/C++ conan.lock
Elixir mix.lock
Enter your work email to receive your report link.

Verify your email to view the full report and start 30 days of continuous monitoring. No credit card required.

Sponsored Devnack Your last release was probably never penetration tested Manual testing by engineers who build software, not an auditor's checklist. Trusted by teams at Swift and Google Talk to Devnack

Background

fastecdsa is a Python library that provides a fast and efficient implementation of Elliptic Curve Digital Signature Algorithm (ECDSA). It supports various elliptic curves, including the NIST P-256 curve. ECDSA is a cryptographic algorithm used for digital signatures and key exchange. The library is widely used in applications that require secure communication and authentication. However, a vulnerability has been discovered in fastecdsa versions prior to 2.1.2 that affects the NIST P-256 curve implementation.

Vulnerability Detail

The vulnerability in fastecdsa arises from the mishandling of the point at infinity in the ECDSA implementation when using the NIST P-256 curve. In certain scenarios with extreme values in k and s^-1, the signature verification fails even if the signature is correct. This behavior can be exploited by an attacker to guess users for whom signature verification will fail. The impact of this vulnerability depends on the specific threat model and the usage of the library.

How To Fix

Latest published version: 4.0.0 as of 22 Oct 2026

pip install --upgrade "fastecdsa==4.0.0"

Upgrading to it may include breaking changes; the version below is the minimum fixed release for this vulnerability.

If you need the minimum change

4a16daeaf139be20654ef58a9fe4c79dc030458c

This is the first release that contains the fix.

pip install --upgrade "fastecdsa==4a16daeaf139be20654ef58a9fe4c79dc030458c"

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 essential to upgrade to the fixed version of fastecdsa to ensure the proper handling of the point at infinity in the ECDSA implementation.

Conclusion

The vulnerability in fastecdsa versions prior to 2.1.2 can result in signature verification failures for certain extreme values, even if the signature is correct. It is crucial for users of fastecdsa to upgrade to version 2.1.2 or later to mitigate this vulnerability. For further assistance or support in vulnerability remediation, please contact DevNack.com.

See every vulnerability recorded for fastecdsa →

Share this vulnerability

FAQ

fastecdsa is a Python library that provides an efficient implementation of Elliptic Curve Digital Signature Algorithm (ECDSA) for secure communication and authentication.

The NIST P-256 curve is one of the elliptic curves specified by the National Institute of Standards and Technology (NIST) for use in cryptographic applications.

The vulnerability in fastecdsa can lead to signature verification failures for certain extreme values, even if the signature is correct. This can be exploited by attackers in specific threat models.

Yes, all versions of fastecdsa prior to 2.1.2 are affected by this vulnerability. It is recommended to upgrade to the fixed version.

No, there is no known workaround for this vulnerability. Upgrading to the fixed version is the recommended solution.

Related vulnerabilities

Recent vulnerabilities recorded for fastecdsa.

How To Fix

Latest published version: 4.0.0 as of 22 Oct 2026

pip install --upgrade "fastecdsa==4.0.0"

Upgrading to it may include breaking changes; the version below is the minimum fixed release for this vulnerability.

If you need the minimum change

4a16daeaf139be20654ef58a9fe4c79dc030458c

This is the first release that contains the fix.

pip install --upgrade "fastecdsa==4a16daeaf139be20654ef58a9fe4c79dc030458c"

Tip — Not sure which version your app runs? Vulert can match this fix to it. Scan free →

Subscribe to Vulert on Telegram
Daily digest of new CVEs, critical and high severity, affected packages and fixes — plus a weekly roundup.
Join the channel →
Help improve this record
Report an issue or send feedback