MA478 ElGamal homework
Version: February 1, 2008
An ElGamal encryption is implemented using the curve
E:y2 = x3 + x-64 modulo p where
p=1015+91.
1 You choose the point P=(1, 499818585323820) and s=2007, so the B=sP and P are your public keys.
The message is encrypted by converting the characters to three character ASCII codes and concatenating them. (e.g. HI become 072073)
This integer is converted to a point of E(Fp) using the Koblitz algorithm described in class.
You receive the message
M_1 = (894136330720162, 940092249519874)
M_2 = (996678937456132, 127900381462949)
Decrypt the message.
2
Alice encodes a message using ElGamal encryption for Bob, who has public keys
P= (1, 499818585323820),
B = (718083622456360, 451478465189579)
You have intercepted the message. It is
M_1 = (918162473805506, 69224596041652)
M_2 = (920136456230481, 940366397854266)
Decrypt the message.
3
An earlier message from Alice to Bob was signed in the following way:
Message:
M_1 = (501189593173147, 403682137227036)
M_2 = (839224421625253, 921248410912109)
Signature:
(501189593173147,
(494804655312612, 185040613880047),
866380907753917)
Alice is using the same elliptic curve, the function f(M)= the x-coordinate of M_1, the generator A= (1, 499818585323820),
and B = (517140597259274, 508718343621762).
Now that you have decoded the message from 2, sign it so that it appears that Alice has signed the message.
Go to