Assessment Item A1 – Understanding and analysis of the operations underlying the RSA encryption algorithm - CS321 Skill being assessed: Ability of student to identify concepts involved in the RSA algorithm, apply those concepts in a computation for a small example, and explain the complications that arise when this computation is scaled up to a realistically large example. Program outcome to which this skill is mapped: (a) An ability to apply knowledge of computing and mathematics appropriate to the discipline Performance Assessment Abstract: You are given the following computational facts: You get an encrypted message in the form of one number whose value is 85. It was encrypted using the public key (23, 143). (Aside not told to students doing exercise: Two small primes – 13 and 11 – are the prime factors of 143) When you execute the ExtendedEuclid algorithm with 23 and 143, it returns the triple (56, −9, 1) When you execute the ExtendedEuclid algorithm with 23 and 120, it returns the triple (47, −9, 1) (Aside – in the future, it would be good to have an online app for the ExtendedEuclid algorithm, so they would actually have to use this to determine the critical information for the mod inverse. That way we would not have to tell them possible return values they might or might not need.) Given this information: What is private key for RSA decryption? Explain how you used the computational facts you were given in determining this key. What is the value of the decrypted message using the private key that you determined in the preceding question? (Leave your answer in factored form.) When you worked from the computational facts that you were given to get the private key, there was one additional fact that you had to discover above and beyond those given facts to fathom the private key. What was this additional fact? Explain why, in practice, this additional fact would not be easy to discover and consequently why RSA encryption safeguards encrypted data from being easily decrypted by those who might surreptitiously intercept a message that was not intended for them. Rubric for Evaluation Criteria Determination of private key. Exemplary The student knows the computations that apply – in particular the role of the ExtendedEuclid algorithm – and carries them out correctly for this example to get the right value for the private key. Decryption of data using a private key in computationally simple example. The student demonstrates precise knowledge of computations that apply and is able to correctly use them in determining the formula that should be applied to get the correct decrypted value for this example. Explanation of what computation typically cannot be determined in the RSA method of encryption and how the difficulty of this computation prevents data encrypted by RSA from being decrypted by those who should not have access to it. The student correctly identifies that determining the prime factors of N is the computation that cannot be determined in a reasonable time and gives a precise explanation of how our inability to perform this computation protects the security of the encrypted Satisfactory The student knows the computations that apply. In carrying them out for this example, they demonstrate knowledge of how the computations should be applied but make an error in doing arithmetic and hence get an incorrect answer. The student knows the computations that apply in a general fashion. However, in carrying them out for this particular example, they make a minor error in actually applying the appropriate formula to the specific numbers involved. The student correctly identifies that determining the prime factors of N is the computation that cannot be done but is not precise in explaining what keeps this computation from being practical and thereby how RSA encryption is safeguarded. Marginal The student knows the computations that apply but is confused about how to apply them to get an actual answer for this example. Deficient The student is not even aware of the computations that apply. The student knows the computations that apply but is confused about how to apply them to get an actual answer for this example. The student is not even aware of the computations that apply. The student correctly identifies that determining the prime factors of N is the computation that cannot be done but offers no explanation of why this computation is impractical and thereby protects RSA-encrypted data. The student is not able to correctly identify the computation. message.