MV Elliptic Curve Cryptosystem

 

Select NIST Curve over Prime Field

 -the curve selection gives you your basepoint G, values for p, values for a and b

Calculate your  public key - or type in Qx and Qy  - a recived public key

type in n, your private key:  

 

 

resulting point Q :

Qx =  

Qy =  


Then n is your private key and Q your public key.



Encode your message to ASCII decimal value here:



Message:   
   

 

 Message to be encrypted (ASCII decimal numbers if you encoded above) :
  




Encrypt ASCII encoded message with public key Q and NIST curve selected above

 type in a random number k for encryption:    


 

encryption result:

Rx:

Ry

c1

c2

Decrypt message  above with private key n and NIST curve selected above

result is message in two parts. Decode below

m1  

m2


Decode ASCII decimal text

only if the message was ascii encoded with the tool above



Message: 

 nb: Encoding and decoding according to the ascii table decimal values normalized to 3 digits




How to test this:
Type in a private key n: eg. 42
press: Calculate nG=Q. This i a public key
Encrypt somthing with a public key:
type  in message eg. "live long and prosper" and press: Encode
type in a random number for encryption e.g. 666
press:Encrypt
Decrypt a ciffertext
press: Decrypt
Press: Decode ascii to text
The orange box with the message hopefully now says "live long and prosper"
Try also the randomizers for n and k
tip: if your message is just any number you can type it in directly in the green box

 






disclaimer: implementation is not rock solid industrial strength. Only for educational and illustrational purpose.
contact: c h r i s t e l @ c h r i s t e l . d k