Los algoritmos siguientes son en campos finitos.
Dado un elemento y otro elemento
que sea una potencia de
habrá que revisar una a una todas las potencias para encontrar
el logaritmo discreto de
en base
.
El algoritmo de Silver, que presentamos a continuación reduce el número
de posibilidades a revisar como potencias candidatas a ser el logaritmo, de
hecho es idéntico al de Shank. El algoritmo aún sigue siendo bastante
costoso e irrealizable cuando p y n son grandes. Este tiene una
complejidad de revisiones de igualdad de elementos en
.
Informalmente, el algoritmo se desempeña como sigue: Se forman dos listas,
y
, de longitud
aproximadamente.
La primera contiene potencias consecutivas de la base
, corridas por el elemento cuyo logaritmo se quiere calcular,
y la otra contiene
potencias de la base distribuídas uniformemente entre
las pn-1 posibles.
Un elemento en la intersección de las listas da el logaritmo discreto buscado.
En el recuadro 3.2 presentamos el algoritmo
en un seudocódigo que se explica a sí mismo.