Question: 4. (40 points) Programming Problem: Please read the programming guidelines in the course outline on Canvas) before starting to work on the programming problem. You

 4. (40 points) Programming Problem: Please read the programming guidelines in

4. (40 points) Programming Problem: Please read the programming guidelines in the course outline on Canvas) before starting to work on the programming problem. You need to read this carefully to understand what has to be turned in and how, including the self-critique. You have to implement encryption and decryption with Simplified DES, as discussed in the class and in Stallings 3rd edition. The permutations IP, P10, P8, and SW, and the functions fk, F, and the S-box SO are all as described, and can be hardwired into your program. For parts (a) and (b), you will use the original Si box as described in Stallings 3rd edition. However, for part (c), you have to use a modified S-box S1'. In the modified Si', the rows 2 and 3 are the same as described for the original Si, but the rows 0 and 1 have been switched. So row 1 is 0,1,2,3 and row 0 is 2,0,1,3. Your program should: take as input a 8-bit block of plaintext and a 10-bit key. Show the following output (please only print what is being asked for, and nothing else): (a) the intermediate result after the SW operation while encypting. (b) the ciphertext. (c) the intermediate result after the SW operation while decrypting. (d) the result of the decryption process. You have to run your programs on the following inputs: (a) with the original S1: the example from the textbook i.e. the plaintext is 10111101 and the key is 1010000010. In this case we know the ciphertext should come out to be 01110101, so this is a good way to check that your program is performing correctly on this input. (b) with the original S1: the plaintext is 01010111 and the key is 1011100110. (c) with the modified Si': the plaintext is 01110101 and the key is 1100110111. 4. (40 points) Programming Problem: Please read the programming guidelines in the course outline on Canvas) before starting to work on the programming problem. You need to read this carefully to understand what has to be turned in and how, including the self-critique. You have to implement encryption and decryption with Simplified DES, as discussed in the class and in Stallings 3rd edition. The permutations IP, P10, P8, and SW, and the functions fk, F, and the S-box SO are all as described, and can be hardwired into your program. For parts (a) and (b), you will use the original Si box as described in Stallings 3rd edition. However, for part (c), you have to use a modified S-box S1'. In the modified Si', the rows 2 and 3 are the same as described for the original Si, but the rows 0 and 1 have been switched. So row 1 is 0,1,2,3 and row 0 is 2,0,1,3. Your program should: take as input a 8-bit block of plaintext and a 10-bit key. Show the following output (please only print what is being asked for, and nothing else): (a) the intermediate result after the SW operation while encypting. (b) the ciphertext. (c) the intermediate result after the SW operation while decrypting. (d) the result of the decryption process. You have to run your programs on the following inputs: (a) with the original S1: the example from the textbook i.e. the plaintext is 10111101 and the key is 1010000010. In this case we know the ciphertext should come out to be 01110101, so this is a good way to check that your program is performing correctly on this input. (b) with the original S1: the plaintext is 01010111 and the key is 1011100110. (c) with the modified Si': the plaintext is 01110101 and the key is 1100110111

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!