Comp 3704
Introduction to Cryptography
Homework 5
Due Tuesday, February 11, 2003
  1. Do problem 2.1 from the text.
  2. Do either problem 2.2 or problem 2.3a from the text.
  3. Say that S1 is the shift cipher on Zn and S2 is the substitution cipher on Zn Describe the cryptosystem S1×S2 as simply as possible. In particular, what is the cardinality of the keyspace of S1× S2?
  4. (Delay this problem until the next assignment.) List the elements of Z12* and give all of their orders. Do the same for Z11* and Z15*. Which of these three multiplicative groups are cyclic? For each of these groups that are cyclic, list all of the primitive elements. Then pick one of the primitive elements, and show how to get all of the other primitive elements from it. The purpose of this problem is to get you to experiment with the structure of these groups, and to better understand the concepts "cyclic" and "primitive element".
  5. (Delay this problem until the next assignment.) Calculate 352666 mod 72. Use Corollary 5.5 (p. 164) to simplify the calculation. Now explain why Corollary 5.5 cannot be used to calculate 102666 mod 72.
  6. (Delay this problem until the next assignment) Calculate 45212 mod 211. Take advantage of Fermat's little theorem to do this problem.
  7. Calculate 68245 mod 65. Use either of the two square and multiply techniques shown in class.
  8. Optional problem: Suppose you encrypt with a Vigenere cipher with a key of length m, and then again with another key of length n. The result looks like a Vigenere cipher - the keylength will be certainly no more then mn. Is such a product cryptosystem actually equivalent a Vigenere cryptosystem with keylength mn? That is, are all keys represented? (Note that this is essentially problem 2.20 from the text). I can ask the same question for the permutation cipher.
  9. Optional problem: Say that S1 is the substitution cipher on Zn and S2 is a permutation cipher on blocks m characters long. What can you say about S1× S2?