This repository implements a Python function that recovers the private key from two different signatures that use the same random nonce during signature generation.
-
Updated
Mar 28, 2026 - Python
This repository implements a Python function that recovers the private key from two different signatures that use the same random nonce during signature generation.
ECDSA nonce-reuse attack to recover a private key.
ECDSA signature vulnerability analysis — nonce reuse, polynonce, biased nonces, lattice/HNP attacks
Browser-based ECDSA demo on secp256k1 and P-256 — sign/verify, live nonce reuse attack with full private key recovery (the PS3 hack, real math), RFC 6979 deterministic nonces verified against test vectors. The signature algorithm behind TLS, Bitcoin, Ethereum, SSH, and WebAuthn. No backends. No simulated math.
Browser-based AES-GCM vs AES-GCM-SIV comparison — live nonce reuse attack showing keystream XOR recovery and GHASH key extraction, synthetic IV construction visualizer, and side-by-side misuse-resistance comparison. RFC 8452. Part of crypto-lab.
Browser-based ChaCha20 stream cipher — quarter-round stepper, keystream visualizer, nonce reuse attack demo, and encrypt/decrypt playground. ARX design, no AES-NI required. Part of crypto-lab.
Add a description, image, and links to the nonce-reuse topic page so that developers can more easily learn about it.
To associate your repository with the nonce-reuse topic, visit your repo's landing page and select "manage topics."