IV\'s: 1) 639404CBD1A1BD2322B206C39140 2) F806274AC0B446C18725ABDCE5 3) 0AA4A910
ID: 3571911 • Letter: I
Question
IV's:
1) 639404CBD1A1BD2322B206C39140
2) F806274AC0B446C18725ABDCE5
3) 0AA4A910D451E069611D5571
Ciphertext's corresponding to IV's respectively:
2)
3)
4)
TEST MATERIAL
TEST CIPHERTEXT:
TEST KEY:
TEST PLAINTEXT:
NOTE: When you decrypt the above ciphertext (test ciphertext) with the test key, you should get the test plaintext.
Write the program in C++ using the crypto++ library. There is no need to write it for every IV file (1-4). Just write the program for the first one, using the first IV file and the first ciphertext to get the decrypted plaintext. Please show a sample of the output screen, there is no need to show the entire screen just show it working. Thanks!
You will be provided a collection of files corresponding to four different plaintexts that were encrypted to produce four different ciphertexts using different 128-bit AES keys. To facilitate faster search, we provide starting points for your search that correspond to the first X bytes of the encryption key. These starting points correspond to "IV files" (motivated by the poor design of WEP, where the design gave away a significant fraction of the RC4 keyspace as a cleartext IV). Here are the specifics of the encryption 1. AES was used in ECB mode with 128-bit encryption 2. Zero padding was applied for the last block to fill out the last 128bit block 3. The four IV files range from 14 bytes down to 11bytes 4. The actual 128-bit key can be represented as K DIVIIUnknown]. Your job is to find the unknow portion of the key for each of the four encryption cases. 5. All plaintext correspond to English phrases with punctuation (so commas and such are allowed To facilitate testing of your encryption/decryption code, we will also provide an additional fifth set of files that include plaintext, ciphertext and encryption key. You should use these to verify that your code is working properly before attempting to jump headlong into breaking the encryption. All files will be found on the class Sakai resource page You and your team must develop an effective search method for finding the missing key. It is recommended that you review the design of the EFF Cracker. You and your team must find each of the four keys and successfully decrypt the ciphertexts to produce the correct plaintexts. Additionally, all teams are expected to perform timing measurements to estimate how long it took to find the unknown key bits for all four casesExplanation / Answer
#include "aes.h" #include main(){ AES_KEY AESkey; unsigned char MBlock[16]; unsigned char MBlock2[16]; unsigned char CBlock[16]; unsigned char Key[16]; int i; Key = "6F1C5CD9270AC8DDEAE6430F3096C806"; CBlock = "1137590E7602256E37FCD36855CC9353C1F2C21171F2EC0391BEEE9A0A19B084"; AES_set_encrypt_key((const unsigned char *) Key, 128, &AESkey); AES_decrypt((const unsigned char *) CBlock, MBlock2, (const AES_KEY *) &AESkey); for (i=0; iRelated Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.