Field points (curve E) Generator G Watch's public key Q_w Phone's public key Q_p Attacker key(s)
drag to pan · scroll to zoom

Smartwatch BLE Pairing & Key Exchange (2D)

Every time a smartwatch pairs with a phone over Bluetooth Low Energy, the two devices run a real elliptic-curve Diffie-Hellman handshake to agree on a session key without ever transmitting a secret. This 2D visualizer plots that handshake on a genuine (deliberately small) elliptic curve over a finite field as a pannable, zoomable lattice: watch and phone each pick a private scalar, publish a public point computed with real modular point-addition, and derive matching session keys from each other's public point. Toggle between "Just Works" and "Numeric Comparison" pairing, then introduce a passive eavesdropper or an active man-in-the-middle attacker to see exactly why Just Works pairing is silently vulnerable while Numeric Comparison's 6-digit code catches the same attack before any data is exchanged — and watch a brute-force key search finish instantly on this toy-sized curve, the same search that is computationally infeasible against the 256-bit curve real BLE hardware actually uses.