Question: Assignment Content This assignment is to be done in groups established via assignment 2. The corresponding Lab unit on Crypto Programming is available in Week

 Assignment Content This assignment is to be done in groups established

Assignment Content This assignment is to be done in groups established via assignment 2. The corresponding Lab unit on Crypto Programming is available in Week 6. The purpose of this assignment is to run, time and compare different encryption algorithms. The assignment has programming and evaluation parts: - write several programs that call encryption functions; - run the programs and record the running time of the cryptographic functions; - prepare a report to detail your findings. Programming Task: Write 3 programs using different symmetric encryption algorithms. Each program should have this structure: 1. generate a key of suitable size 2. create a sample block of plaintext of suitable size 3. in a loop encrypt the plaintext multiple times and record the running time 4. prepare a block of cyphertext (maybe saved from previous step) 5. in a loop decrypt the cyphertext multiple times and record the running time 6. compute average time to encrypt one block, and average time to decrypt one block Prepare a Report: Your report should contain the following: - a plot showing the timing results for encryption and decryption times for the algorithms used. - compare encryption with decryption times in general and for the specific algorithms used. Explain your observations. Notes: - You must run all programs on your personal Linux system. It has encryption capabilities installed. - Several encryption algorithms are supported: select 3, but one of them must be AES. Don't use a stream cipher, like RC4. - To measure the running time of the encryption functions make sure to exclude //O and other general computations. Deliverables: - 3 source code files Assignment Content This assignment is to be done in groups established via assignment 2. The corresponding Lab unit on Crypto Programming is available in Week 6. The purpose of this assignment is to run, time and compare different encryption algorithms. The assignment has programming and evaluation parts: - write several programs that call encryption functions; - run the programs and record the running time of the cryptographic functions; - prepare a report to detail your findings. Programming Task: Write 3 programs using different symmetric encryption algorithms. Each program should have this structure: 1. generate a key of suitable size 2. create a sample block of plaintext of suitable size 3. in a loop encrypt the plaintext multiple times and record the running time 4. prepare a block of cyphertext (maybe saved from previous step) 5. in a loop decrypt the cyphertext multiple times and record the running time 6. compute average time to encrypt one block, and average time to decrypt one block Prepare a Report: Your report should contain the following: - a plot showing the timing results for encryption and decryption times for the algorithms used. - compare encryption with decryption times in general and for the specific algorithms used. Explain your observations. Notes: - You must run all programs on your personal Linux system. It has encryption capabilities installed. - Several encryption algorithms are supported: select 3, but one of them must be AES. Don't use a stream cipher, like RC4. - To measure the running time of the encryption functions make sure to exclude //O and other general computations. Deliverables: - 3 source code files

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!