Crypto Lab
Lab
Interactive toys for the math behind the crypto I play with. Click around, everything runs in your browser.
Visualizer 01
Elliptic curves over Fp
Over a finite field an elliptic curve isn't a smooth line any more. It's a scatter of points that still form a group. Pick points to add them, or step through k·P to see how scalar multiplication, the operation ECDSA is built on, hops around the curve.
Visualizer 02
Cyclic groups in Fp*
The nonzero numbers mod a prime p form a group under multiplication. Powers of an element g walk around it: a generator visits every element before coming back to 1, others get stuck in a smaller cycle whose length divides p − 1. Going forward (gk) is easy; going back from gk to k is the discrete log problem that Diffie–Hellman and DSA rely on.
Tap an element h to find k with gk = h.
Visualizer 03
Lattices and the closest vector problem
A lattice is every integer combination of two basis vectors. The same lattice has many bases: a short, nearly orthogonal "good" one and long, skewed "bad" ones. Tap anywhere to drop a target: rounding it to the lattice with the good basis (Babai's method) lands on the closest point, with a bad basis it usually misses. Lattice schemes like ML-DSA (used in my Q-Sealnet project) publish a bad basis and keep the good one secret.
Tap anywhere to place a target point.