EECE 405 / 560 Final project The final project is a straightforward demonstration of public-key encryption. To complete the project, you must: 1. Generate a public/private key pair for a public-key encryption algorithm—either RSA, El Gamal, or the Rabin cryptosystem;
2. Encrypt a specific message (see below) with your encryption key;
3. Decrypt that same message with your decryption key, effectively signing it. 405 students must perform these steps for one algorithm of their choice; 560 students must perform these steps for two algorithms of their choice.
Details: Your key must be generated according to the following constraints: • If you are using RSA, your modulus should be at least 100 decimal digits. You can choose any values other than 1 for the encryption and decryption exponent, as long as they are valid.
• If you are using the Rabin cryptosystem, your modulus should be at least 100 decimal digits.
• If you are using the El Gamal cryptosystem, the prime modulus p should be at least 50 decimal digits, but the number 2 should be a generator (mod p). For signing, use the El Gamal signature scheme we describe in class. Message: Your message M should be the numerical portion of your B number (e.g. B00123456 has numerical portion 123456) added to the constant 3200. This will be the message that you encrypt in step 2 and decrypt in step 3. 1 Further details: You may use any software to perform this key generation, encryption and decryption. I will provide you with utilities that can (A) generate a prime number or test for primality; (B) compute ab (mod n), and (C) perform the extended Euclidean algorithm. You must provide your results as numbers, in decimal notation, in plain text. Hand in both the public and private key, and the results of encryption and decryption. Do not add any headers or hashes or other formatting: only encrypt/decrypt the number M, using your key. Due date: this project is due by midnight on the last day of the final exam period. 3200 == 1 2656139888758747693387813220357796268292334526533944959745749617390924909013 02182994384699044001.
欢迎咨询51作业君