330 Cryptography with Open-Source Software
27. Using the curve and field defined in section 12.7, work through a full El
Gamal encryption and decryption, using para meters of your choice.
28. Repeat the previous question but use the Menezes–Vanstone system.
29. Use the cur ve and point in q uestion 24 to work thr ough a n El Gamal
signature. Use the values m = 50, k = 47, and the private key a = 47.
30. An elliptic curve DSS va riant can be defined as follows:
(i) The shared parameters a re a curve E over Z
p
, and a point P ∈ E
of prime order q. With a private key a ≤ q − 1, the public key is
Q = aP .
(ii) To sign a message represented as an integer m, choose a random
k ≤ q and compute (x, y) = kP . Then the signatur e is the pa ir
(r, s) where
r = x (mo