Question: In python write a function mod_exp(x, y, n) that computes and returns the value of x^y mod n. Use the fast modular exponentiation algorithm given

In python write a function mod_exp(x, y, n) that computes and returns the value of x^y mod n. Use the fast modular exponentiation algorithm given in Figure 9.7.4 of the zyBook.

Figure 9.7.4: An iterative algorithm for fast modular exponentiation.

Input: Positive integers x and y. Output: xy mod n p := 1 //p holds the partial result. s := x //s holds the current x2jx2j. r := y //r is used to compute the binary expansion of y While ( r > 0 ) If ( r mod 2 = 1 ) p := ps mod n s := ss mod n r := r div 2 End-while Return(p)

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!