Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Problem 8. An algorithm for extracting discrete logarithms Let p be a large prime and g a fixed primitive root of p. Let h Z

Problem 8.

An algorithm for extracting discrete logarithms

Let p be a large prime and g a fixed primitive root of p. Let h image text in transcribed Z*p

be the modular inverse of g, so g h image text in transcribed 1 (mod p). Let a image text in transcribed Z*p . Define the following lists of elements in Z*p : yi image text in transcribed a hi (mod p), 0 image text in transcribed i image text in transcribed m - 1; zj image text in transcribed (gm)j (mod p), 0 image text in transcribed j image text in transcribed k - 1. Here, m is a positive integer (an as yet unspecified parameter) and k is the smallest integer with k image text in transcribed (p - 1)/m.

(b) Consider the following procedure for computing the discrete logarithm of a with respect to g. 1. Compute the list Y = (y0, y1 ... ym-1 ) 2. If 1 image text in transcribed yi (mod p) for some i image text in transcribed { 0, 1, ...m - 1} , then output i and quit. 3. Compute the list Z = (z0, z1, z2 ,... ) until an element zj is found that appears in Y. 4. Upon finding such a match, say zj = yi, output x image text in transcribed j m + i (mod p - 1). Prove that this procedure terminates and outputs the discrete logarithm of a.

(c) Assuming the worst case scenario (i.e. the entire list Z = (z0 , z1 ,...; zk-1) needs to be generated), how many modular multiplication are required to extract the discrete logarithm of a using the procedure above? Your count should be as accurate as possible (i.e. don't count modular multiplications that aren't needed). You may assume that the quantities m, k, h and gm (mod p) have been precomputed as they are independent of a. You may also ignore the cost of searching the list Y for an element z image text in transcribed Z.

(d) How should m be chosen to minimize the number of modular multiplication required by the procedure above? Explain your choice.

(e) Let p = 107. i. Use the primitive root test from class to verify that 2 is a primitive root of p. Show your work.

ii. Use the procedure from part (b) and your choice of m from part (d) to compute the discrete logarithm of 6 with respect to 2 in Z*107 . Show your work. You may want to verify that your final answer is correct.

.

Transcribed image text

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Database Security XI Status And Prospects

Authors: T.Y. Lin, Shelly Qian

1st Edition

0412820900, 978-0412820908

More Books

Students also viewed these Databases questions