Computing Discrete Logarithms