๐ Elliptic Curve Cryptography (ECC)
Stronger security, dramatically smaller keysโฑ ~3 min
A 256-bit ECC key provides roughly the same security as a 3072-bit RSA key. Smaller keys mean faster operations, less bandwidth, and less storage. This matters enormously on mobile devices, IoT sensors, TLS certificates, and any system where millions of operations happen per second.
What Is an Elliptic Curve?
An elliptic curve is defined by the equation yยฒ = xยณ + ax + b over a finite field. Points on the curve (pairs of numbers satisfying the equation) form a group โ you can 'add' two points on the curve to get a third point on the curve, using a geometric rule.
Common ECC Curves
| Curve | Key Size | Security | Used In |
|---|---|---|---|
| P-256 (secp256r1) | 256 bits | ~128 bits | TLS certificates, HTTPS, most browsers |
| P-384 (secp384r1) | 384 bits | ~192 bits | High-security government use (NSA Suite B) |
| Curve25519 | 255 bits | ~128 bits | Signal, WireGuard, SSH, modern TLS โ fastest and most trusted |
| secp256k1 | 256 bits | ~128 bits | Bitcoin and Ethereum (not common in TLS) |
ECDH โ Elliptic Curve Diffie-Hellman
ECDH replaces classic Diffie-Hellman in modern protocols. Alice and Bob each generate an ECC key pair. They exchange public keys and each compute the same shared secret using their own private key and the other's public key. A third party who sees both public keys cannot compute the shared secret (ECDLP).
ECDSA โ Digital Signatures with ECC
ECDSA (Elliptic Curve Digital Signature Algorithm) is the ECC equivalent of RSA signatures. It generates a signature (r, s) from a message hash and private key. Verification uses the public key. ECDSA with P-256 is used in most TLS certificates today.
A 256-bit ECC key is roughly as strong as an RSA key ofโฆ