Overview
Learn about a novel attack against ECDSA (Elliptic Curve Digital Signature Algorithm) in this DEF CON 31 conference talk that explores vulnerability discovery and real-world implications. Dive into the journey of discovering security flaws in widely-used digital signature implementations, including findings from Bitcoin and Ethereum networks. Explore the technical aspects of ECDSA, from basic digital signatures to key generation, signing, and verification processes. Understand how bad random number generators can lead to vulnerabilities, and examine the specific requirements and implementation of the Polynonce attack. Follow along with practical demonstrations using Bitcoin and Ethereum message computation and data collection, plus analysis of TLS servers and Minerva datasets. Access the provided academic paper and open-source code to identify and prevent similar vulnerabilities in ECDSA-based systems. Gain insights into cryptocurrency wallet security, including evidence of previous exploits and drained wallets, while learning about potential areas for further security research and exploration.
Syllabus
Intro
Digital signatures - the basics
ECDSA (keygen, sign, verify)
Bad RNGs - let's pick one
Polynonce - Requirements in practice
Bitcoin - Computing the message
Bitcoin - Obtaining the data
Ethereum - Computing the message
Ethereum - Obtaining the data
Sample of TLS servers
Minerva datasets
Implementing the attack
Results - Bitcoin and Ethereum
Results - TLS, Minerva
Taught by
DEFCONConference