
Es un algoritmo criptográfico ampliamente usado para el intercambio de información encriptada. Está basado en la siguiente idea:
Alicia y Bernardo desean crear una clave secreta en común y, para ello, acuerdan usar un primo p y una de sus raíces primitivas g; cada uno elige de manera privada y al azar un entero, digamos que Alicia elige a y Bernardo b. Alicia calcula ga y le envía a Bernardo de manera pública el residuo a′ (módulo p). Bernardo hace lo mismo con su entero b, es decir, calcula gb y le envía a Alicia de manera pública el residuo b′ (módulo p). Ahora ambos tienen el código secreto ab y pueden calcular gab. (Se supone que cada uno sabe calcular el logaritmo discreto de un número respecto a un módulo.)
Ver también:
Logaritmo discreto
Ver también:
Orden de un entero (módulo m)
Ver también:
Raíces primitivas (módulo m)