1) Нам нужно простое число p.
Сгенерировать по Rabin-Miller
2) Далее нам нужно найти g. Это примитивный корень числа p.
3) Генерация ключей для Алисы и Боба
Алиса и Боб генерируют свои пары ключей для безопасного обмена информацией:
3.1) Ключи Алисы
Xa < p
Xa =Ya = gXa mod p
3.2) Ключи Боба
Xb < p
Xb =Yb = gXb mod p
4) Создание общего секретного ключа пользователем
4.1) Создание общего секретного ключа пользователем Алиса
K = (Yb)Xa mod p
4.2) Создание общего секретного ключа пользователем Боб
K = (Ya)Xb mod p
K = gXa × Xb mod p