This attack uses a combination of computational power and memory storage to solve
the DLP. Let G be a cyclic group with generator . Suppose that has order n
and set m = d
p
n e. Observe that if = x, then using the euclidean algorithm
we can write x as follows: x = im + j, where 0 i, j < m. Thus we have that
= x = im+j = imj , which implies that (−m)i = j . To compute the discrete
logarithm, we begin by computing and storing the values (j, j) for 0 j m. We
then compute (−m) and raise that to the exponent i for 0 i m − 1 and check
these values against the stored values of j to find a match. When a match is found
we have solved the DLP and we have x = im + j as required.