Chapter 1: Q20E (page 49)
Find the inverse of:.
Short Answer
Inverse of the given numbers is obtained.
Chapter 1: Q20E (page 49)
Find the inverse of:.
Inverse of the given numbers is obtained.
All the tools & learning materials you need for study success - in one app.
Get started for freeRSA and digital signatures. Recall that in the RSA public-key cryptosystem, each user has a public key P=(N,e) and a secret key d. In a digital signature scheme, there are two algorithms, sign and verify. The sign procedure takes a message and a secret key, then outputs a signature . The verify procedure takes a public key , a signature , and a message M, then returns “true” if could have been created by sign (when called with message M and the secret key (N, e) corresponding to the public key ); “false” otherwise.
(a)Why would we want digital signatures?
(b) An RSA signature consists of sign, where d is a secret key and N is part of the public key . Show that anyone who knows the public key can perform verify , i.e., they can check that a signature really was created by the private key. Give an implementation and prove its correctness.
(c) Generate your own RSA modulus, N=pq public key e, and private key d (you don’t need to use a computer). Pick p and q so you have a 4-digit modulus and work by hand. Now sign your name using the private exponent of this RSA modulus. To do this you will need to specify some one-to-one mapping from strings to integers in . Specify any mapping you like. Give the mapping from your name to numbers then sign the first number by giving the value , and finally show that .
(d) Alice wants to write a message that looks like it was digitally signed by Bob. She notices that Bob’s public RSA key is . To what exponent should she raise her message?
Give an efficient algorithm to compute the least common multiple of two n-bit numbers and , that is, the smallest number divisible by both and . What is the running time of your algorithm as a function of ?
Is divisible by ?
Consider the problem of computing x y for given integers x and y: we want the whole answer, not modulo a third integer. We know two algorithms for doing this: the iterative algorithm which performs y − 1 multiplications by x; and the recursive algorithm based on the binary expansion of y. Compare the time requirements of these two algorithms, assuming that the time to multiply an n-bit number by an m-bit number is O(mn).
The algorithm for computing by repeated squaring does not necessarily lead to the minimum number of multiplications. Give an example of where the exponentiation can be performed using fewer multiplications, by some other method.
What do you think about this solution?
We value your feedback to improve our textbook solutions.