Elliptic Curve Cryptography: finite fields and discrete logarithms