Part 1 ====== Download the AES report at: http://csrc.nist.gov/encryption/aes/round2/r2report.pdf In this report, study sections 1, 2, 5, and 6. 2.1.1 (1 point) What was the second most important factor in the AES evaluation? What implementations have been evaluated by NIST? 2.1.2 (1 point) What was the NIST decision regarding the backup algorithm? 2.1.3 (1 points) What level of security were the finalists judged at? 2.1.4 (2 points) Which table shows the parallelisation potential for a single block encryption? Which algorithms are judged as good for withstanding implementation attacks like timing or power analysis? 2.1.5 (1 point) What is the key setup performance of the finalists? Part 2 ====== Download the source code (C links provided, but feel free to use other sources) for the five AES finalists from http://fp.gladman.plus.com/cryptography_technology/ or from http://csrc.nist.gov/encryption/aes/round2/r2algs-code.html and perform the following tests with all five algorithms. !!!Make sure your solution references/links the source code used!!! 2.2.1 (5 points) How many ciphertext bits change after you change 1 bit of plaintext? Choose an arbitrary file (min. length of one block!), use the same file for all tests. Set the key to 128 bits and make 20 measurements where you change 1 bit of the plaintext and check how many bits of the ciphertext (in a selected, typically first, block - you'd mostly use CBC mode, I assume) have changed. Note: make sure you aren't flopping the same bit all around! :-) Show this in absolute values and in percents in a table for all five algorithms. Your solution should also include the first plaintext and outline the method you deployed for flopping the bits! 2.2.2 (2 points) How many ciphertext bits change after you change 1 bit of key. Analogous to 2.2.1 - just keep the plaintext fixed and go on with changing the key by 1 bit 20 times. Similar table to that of 2.2.1 should be included in your solution, together with the file (can be the same one) and method description. 2.2.3 (max. 5 points) Choose 3 files with sizes of about 100KB, 5MB, and 500MB respectively. Measure the encryption and decryption times needed for the finalist algorithms. Make sure you consider the CPU use (%) when sharing the processor! Test this either for one platform (2 points), two (4 points) platforms or three (5 points) platforms and all five algorithms. Take platform as a unique combination of OS & hardware, eg running the test on the same machine under Win and Linux => two platforms. Your solution to this assignment should then contain a well described table with results. Deadline: November 8, 2005; 23:59 ---END of assignment 2