Photo by Benjamin Lizardo on Unsplash

Cracking Elliptic Curves with the MOV Attack

--

Elliptic Curve Cryptography (ECC) is wiping the floor with other key exchange, signing and encryption methods. Overall it is well defined for a scale up in security, and where a 256-bit ECC key is equivalent in security to a 3,072-bit RSA key. But ECC still has one weakness: the MOV Attack, and which uses pairing-based cryptography.

With key pairing we have two cyclic groups (G1 and G2), and which are of an order of a prime number (n). A pairing on (G1,G2,GT) defines the function e:GG2→GT, and where g1 is the generator for G1 and g2 is the generator for G2. If we have the points of P on G1 and Q on G2, we get a pairing of:

e(P,Q)

Now if we select a private key value of x, and then the public key will become:

Ppub=xP

In order to find x, we would have to search the values of x to match P to x. In pairing, we can reduce the difficulty with:

e(xP,Q)=e(P,Q)^x

This now becomes a discrete logarithm problem within a finite field, and which makes it easier to find x.

Coding

Let’s keep it simple by generating a value of x between 0 and 4096, and just use brute force to find x. The outline coding using the library from the MIRACL library [here] is:

--

--

Prof Bill Buchanan OBE FRSE
ASecuritySite: When Bob Met Alice

Professor of Cryptography. Serial innovator. Believer in fairness, justice & freedom. Based in Edinburgh. Old World Breaker. New World Creator. Building trust.