- Генерируется случайное простое число
.
- Выбирается целое число
— первообразный корень
.
- Выбирается случайное целое число
такое, что
.
- Вычисляется
.
- Открытым ключом является тройка
, закрытым ключом — число
.
- Выбирается сессионный ключ — случайное целое число
такое, что
- Вычисляются числа
и
.
- Пара чисел
является шифротекстом.