**

**

€3.00

Tax included

ElGamal encryption scheme.

COMPLETED.

This protocol is executed between Student Alice (You) and Mentor Bob. Parameter values sent by Alice are included in brackets [ ] and must be entered in the corresponding input fields.

The following functions are used in the protocol:

**>> genstrongprime(bl)**

**>> mod_exp(g,x,p)**

**>> randi(z)**

** **

- Generate strong prime number
of 28 bits length using Octave function*p*

>> genstrongprime(28)

You could wait for a moment. You must check that generated ** p** is greater than 2^27= 134217728. Send [

- If it is OK, find a generator
of multiplicative group*g*={1,2,3, …*Z*_{p}-1} and send system parameters [*p*,*p*] to the Mentor.*g*

- If it is OK, generate at random secret number
in the interval*x***1<**, compute Public Key*x*<*p*-1and send [*A=g*^{x }mod p] to the Mentor.*A*

- Mentor sends to You his Public Key
=….. and ElGamal ciphertext*B*=(….., …..)=(*C**C*_{1},*C*_{2}) of encrypted random number. Decrypt this ciphertext and find*z*. Form a message*z*consisting of current date and time in the format*DT*=MMDDhhmm . Compute message*DT*=*D*+*z*and Encrypt message*DT*by computing ElGamal ciphertext*D*=(*C*_{D}*C*_{D}_{1},*C*_{D}_{2}). Send [*C*_{D}_{1},*C*_{D}_{2}] to the Mentor for verification.

3389 Items