To Know: I’ve updated/combined the modules on the website under “Goals” because I got confused and combined the second and third into one thing anyway. You can check that out if you’d like — we’ll have just 6 assessments overall, not 9.

Module “corrections”. I’d like to allow you to do corrections for the module assessments. For Module 1, I’d like you to email me / direct message me a maximum of two problems (individual problems/parts, not problems with multiple parts, e.g. 4d) from the assessment that you would like to re-do, to replace your current grade on those problems, up to a maximum of 80% credit. I will then look at the problems people are asking for and make “replacement” problems for you to attempt. This cannot lower your grade, it can only improve it. It is optional.

To Do: Factor the number 184507 using the p-1 factoring method from today’s class. Tell me what you choose for a, and tell me what powers of a you compute, and tell me what gcd you tried, and what factor you found (you may need to keep lengthening the chain and trying again). You can use the Sage command “factorial(n)” if you want to save time. You can use the command “is_prime(n)” to check that you’ve factored it all the way. Do not ever use the command “factor(n)” since that’s cheating (except to check your answer after you’re done). Note: It’s in Section 6.4 of 2nd edition of text.

To Do: Hallowe’en RSA Ciphertext Chain!

Review the way the RSA cryptosystem works.

For this activity, you can use the helpful Sage tools on the RSA Tools page.

Create your own Public Key:

Choose two primes p and q of 10 digits each. Compute n, e, d according to the RSA system. Write down d so you don’t forget.

Publish (n,e) as your public key on the #ciphertexts channel on discord.

Encrypt a message to the last person in the chain:

Obtain their public key (n,e).

Make a message in ASCII (just like in the El Gamal ciphertext chain), which is a number < n. It should be an answer to a question “What would be fun to be for Halloween?” You probably have room for about 6 letters.

Encrypt your message to the person’s public key according to RSA, and post the ciphertext with a @whoever on the ciphertext channel.

Decrypt the message you receive:

Use the RSA decryption method with your own private key to read the message and post it on the ciphertext channel with @whoever for confirmation.