EME: Assignment

This assignment is a simple practice of using the RSA algorithm with sourcing parameters from your NetID. If you complete this assignment in pairs, decide which one’s NetID you will use, and keep it consistent.

  • Obtain the first two **distinct** letters in your NetID. Call them letter1 and letter2. Do not swap the order.
    • If all letters in your NetID are the same, use z for letter2.
  • Obtain the ASCII code of letter1 and letter2 (both in lowercase) respectively. Call them ascii1 and ascii2. Both numbers should therefore be between 97 and 122 (inclusive).
  • Obtain the ascii1-th prime using this webpage. It will be your p.
  • Obtain the ascii2-th prime using this webpage. It will be your q.
  • Choose r (and s) yourself.

If this is a regular programming assignment in CS330, we will have you implement your own code for the Euclidean Algorithm and modular exponentiation. You are still welcome to, but we promise no mandatory programming in this course. Therefore, check out the webpages below:


Then, submit to Gradescope only the following information:

  • The NetID in use
  • The public key pair (r,n)

You do NOT need to include any other intermediate steps/work.


We will then send you (through a comment in your Gradescope submission) a ciphertext. You should then decrypt the ciphertext and update your submission to include the plaintext. Therefore, your final submission should have the information below:

  • The NetID in use
  • The public key pair (r,n)
  • The plaintext

You earn the assignment credit as we verify the plaintext you submit is the plaintext we use.


Note that all EM assignments are due LDoC on paper, but there will not be any penalty until 5/1 11:59pm.

Any submissions by LDoC midnight will get at least one round of feedback, although we will try our best to give everyone feedback.

Since you do need at least one round of feedback for this assignment, we recommend everyone to submit once by LDoC.

Leave a Reply

Your email address will not be published. Required fields are marked *