Math 480, Spring 2015, Assignment 5

From cartan.math.umb.edu


Carefully describe the following algorithms:[edit]

  1. ElGamal (encryption and decryption)

Carefully state the following theorems (you do not need to prove them):[edit]

  1. Theorem relating the difficulty of ElGamal decryption to the difficulty of the Diffie-Hellman problem (see Proposition 2.10 in the text; also observe that solving the Diffie-Hellman problem leads to an ElGamal decryption algorithm).

Solve the following problems:[edit]

  1. Exercises 2.8 and 2.9.

Coding projects:[edit]

  1. Implement the ElGamal cryptosystem (i.e. write a utility that encrypts and decrypts files). See the previous assignment for the public parameters of a secure Diffie-Hellman group. If you are working in a Unix-like environment, you may find it simplest to implement your utility as a pair of filters, i.e. a pair of command-line utilities that read from stdin and write to stdout. Actual files can be passed and captured by input-output redirection. Private keys should be read from files with appropriate permissions; public keys can also be read from files, or passed as command line options.
--------------------End of assignment--------------------

Questions:[edit]

Solutions:[edit]