Answered step by step
Verified Expert Solution
Question
1 Approved Answer
Department of Electrical Engineering and Computer Science Texas A&M University-Kingsville CSEN 5303 Advanced Topics: Studies on Current Research Spring 2020 Instructor: Habib M. Ammari, Ph.D.
Department of Electrical Engineering and Computer Science Texas A&M University-Kingsville CSEN 5303 Advanced Topics: Studies on Current Research Spring 2020 Instructor: Habib M. Ammari, Ph.D. (CSE), Ph.D. (CS) First Project List: Cipher Design, Analysis, and Implementation Due Date: Feb. 11, 2020 Note: Feel free to choose any project you would like to solve and implement. If you do more than one successfully, you will receive a bonus of five (5) points. Also, you do not have to write a report for the extra project you decide to do. It is imperative that you demo your project to the Teaching Assistant by Feb. 13, 2020. Project 1 (k-Rail Fence Cipher): The rail fence cipher is a transposition cipher, where a plaintext message is enciphered into a ciphertext message by performing some sort of permutation on the plaintext letters. Using this encryption technique, a plaintext is written down as a sequence of diagonals and then reads off as a sequence of rows. For example, to encipher the message "HELLO CSEN 4340 STUDENTS!" with a rail fence of depth 2, we write the following: HL 0 S N 3 0 TDNS I E LE 44 SUET The resulting ciphertext is: HLOSN30TDNSELCE44SUET! The decryption function is performed as follows: Compute the length of ciphertext. Let m be this length. - Let k be the number of rails (i.e., key). Reserve m placeholders on the k-rail fence in the same way a plaintext was placed on a k-rail fence. Assign the ciphertext letters to those placeholders row by row, starting from the top one. - Read off the resulting plaintext as a sequence of diagonals. 1. Write an algorithm for a k-rail fence cipher, where k > 2. 2. Show that your proposed algorithm is correct using an informal proof (i.e., discussion). 3. Give a program corresponding to your proposed algorithm, using your favorite programming language. Your program should simulate this cipher and display the ciphertext along with the corresponding plaintext and key. The implementation of this k-rail fence cipher software should be as structured as possible. You should have a user-friendly interface showing all the steps of this cipher, including encryption and decryption. Project 2 (Affine Cipher): The affine cipher is a substitution cipher, where a plaintext letter x is enciphered into a ciphertext letter y as follows: x+y= ax + B (mod 26) The key for this encryption function is (a, b), where 0 sa,
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started