이산 로그 문제는 거듭제곱의 결과값이 주어졌을 때 지수를 역으로 찾는 문제이다. 소수 모듈러 연산에서 이 값을 효율적으로 구하기 위해 O(p)O(\sqrt{p})O(p)의 시간 복잡도를 가지는 Baby-step Giant-step 알고리즘을 쓰도록 한다.