OpenViSTAI · Agents · Blockchain · Crypto
Menu
Developer Tools

Ecdsa Private Key Recovery

Ecdsa Private Key Recovery is a Python library that demonstrates recovery of ECDSA and DSA private keys when signatures reuse a nonce and have the same r parameter.

Independent OpenViST project profile, based on linked sources.

Ecdsa Private Key Recovery — OpenViST project profile in Developer Tools.
OpenViST project illustration. See the linked sources for product details.
Understand the project

Practical overview

When it fits

Use it when you have signature data and want to investigate suspected nonce reuse, especially matching-r signatures associated with the same public key across different messages or hashes.

Who it is for

  • Developers auditing signature datasets for repeated r values.
  • Cryptography researchers demonstrating the consequences of ECDSA or DSA nonce reuse.
  • Analysts examining signature material associated with Bitcoin-derived projects.

Documented uses

  • Identify candidate ECDSA signatures with matching r values for analysis.
  • Provide two suitable signatures to demonstrate recovery of the corresponding private key.
  • Set up the library and invoke its included test script.
Before you choose

Requirements & limits

The public repository lists a GPL-2.0 license.

  • Recovery depends on signatures sharing the nonce and resulting r value; it is not described as general-purpose key recovery.
  • The documented workflow requires signature values, message hashes, a public key and curve information.
  • The README documents Python 2 and Python 3 setup paths and includes a test script.
  • The example identifies SECP256k1, but does not establish support across all curves or signature formats.

Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.

Source-based practical guide

Set up the Python library and run its included test file

Install the repository in a Python virtual environment and invoke the documented test script.

Before you start

  • Python 2.7 or Python 3
  • The repository’s requirements file and setup script

Steps

  1. Create a virtual environment with the documented Python interpreter and activate it.

  2. Install dependencies with the command below.

    Documented command
    python -m pip install -r requirements.txt
  3. Install the package with the command below.

    Documented command
    python setup.py install
  4. Run the command below.

    Documented command
    python tests/test_ecdsa_key_recovery.py

Expected outcome

The included test script is invoked after installation.

Guide limitations

  • The README documents these commands but does not establish compatibility across Python versions or environments.
Evidence and transparency

Sources & review

Source record details
Source availability
Active
Sources checked
16 October 2026
Original website title
tintinweb/ecdsa-private-key-recovery · Official homepage title · retained in its source language