This thesis focuses on elliptic curve arithmetic over the prime field GF (p) and elliptic curve cryptography (ECC). ECC over GF(p) has its own arithmetic which is done over elliptic curves of the form y2; ≡ x3;+ax+b (mod p), where p is prime. ECC is gaining importance in security because it uses smaller keys to provide the same security level as the popular RSA. It is the superior cryptographic scheme based on time efficiency and resource utilization. It is more suitable than RSA for DNSSEC and IoT systems and devices.
Unlike RSA, which is easily understood, ECC is complicated because of the arithmetic involved. It is not widely understood. We provide a tutorial on elliptic curve arithmetic and also explain the working of the ElGamal cryptosystem. We also describe general hardware-efficient methods to implement ECC such as Montgomery multiplication and projective coordinates. These methods are challenging to understand. Essentially, projective coordinates help reduce the number of inversions required in doing scalar multiplication. If Montgomery multiplication is used, a time-consuming operation like reduction modulo a prime p can be simplified. In this work, we also present a user-friendly Java GUI application to provide education in elliptic curve arithmetic and its applications in cryptosystems. Lastly, we provide a module of questions and solutions to do the same and also enable senior students and graduate students to use ECC in their project work.