Answered step by step
Verified Expert Solution
Question
1 Approved Answer
The code has to be in C++. Thank you. Write a program where vou implement Modular Exponentiation (ME) using the square and multiply approach as
The code has to be in C++. Thank you.
Write a program where vou implement Modular Exponentiation (ME) using the square and multiply approach as a function which is called in main. ME calculates a^k mod n. The program should get values for a, k and n from the user. This code requires two steps. First k must be converted to a binary representation K consisting of a list of 0s and 1s. Second, Modular Exponentiation must be performed using a, n and KIl as arguments procedure BinaryK(k) K = empty list //hint: make K a vector tmp k while tmp >0 add y mod 2 to K //hint: use pushback tmp (tmp-K[i])/2 return K procedure ModularExpo(a, K, n) ifn= 1 return 0 return b if K[0]-1 for i = l to length(K)-1 A =A*A mod n ifK[i] = 1 b- A*b mod n return bStep by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started