Implementing Diffie-Hellman Elliptic Curve Cryptosystem

The steps of simulating Diffie-Hellman key-exchange protocol are as follow:

  1. Generating elliptic curve (Hard task. For cryptography we want the order of the curve to contain the largest prime number possible) and choosing a random base point on the chosen elliptic curve (let’s call the base point ‘B’)
  2. Generating each sides private key (by generating random value)
  3. Generating each sides public key (A computes P_A=k_AB   and B computes P_B=k_BB )
  4. Show that each side gets the same shared secret ( P_s = k_A(k_B) = k_B(k_A) )

[hey, do you notice that have successfully written the equations using latex? It’s fun and easy! Will post more difficult equations… ho ho ho… 😀 ]