ASSIGNMENT On Substitution and Transposition Ciphers
ASSIGNMENT On Substitution and Transposition Ciphers
General Instructions:
1. The following codes are to be written in C/Python. If any other coding language is
preferred by the students, they may proceed after taking permissions from the
teacher.
2. The assignments must be submitted on LMS in soft form. Include the following in
your submission:
Code with comments, Algorithm/Flow chart, Screenshots of the output.
1. Write a program that can encrypt and decrypt using the general Caesar cipher, also
known as an additive cipher.
2. Write a program that can encrypt and decrypt using the affine cipher.
3. Write a program that can perform a letter frequency attack on an additive cipher without
human intervention. Your software should produce possible plaintexts in rough order of
likelihood. It would be good if your user interface allowed the user to specify “give me
the top 10 possible plaintexts.”
4. Write a program that can perform a letter frequency attack on any monoalphabetic
substitution cipher without human intervention. Your software should produce possible
plaintexts in rough order of likelihood. It would be good if your user interface allowed
the user to specify “give me the top 10 possible plaintexts.”
5. Create software that can encrypt and decrypt using a 2 * 2 Hill cipher.
6. Create software that can encrypt and decrypt using a general substitution block cipher.