Baby Step, Giant Step
The simple iterative approach
Last updated
The simple iterative approach
Last updated
Baby Step, Giant Step is a very simple approach to solving the DLP often described as a meet-in-the-middle algorithm.
Let us say that . First we choose an arbitrary number , which defines how many iterations we try. Next we evaluate
Following that, we evaluate
If the DLP has a soultion, there will be at least one common value in both lists. If we let these common values be and , we can then solve it easily from there:
Solving the DLP! A few problems arise, however.
In Sage, this is quite simple:
And we can test it easily too
You will first notice that our choice of is arbitrary. If is large enough, this approach becomes completely infeasible, so using solely this algorithm is only effective when is small. After all, this is a very naive brute-force approach.