Алиса знает закрытый ключ Кэрол. Может быть она взломала RSA, а может она взломала дверь квартиры Кэрол и выкрала ключ. Алиса хочет убедить Боба, что ей известен ключ Кэрол. Однако она не хочет ни сообщать Бобу ключ, ни даже расшифровать для Боба одно из сообщений Кэрол . Далее приведен протокол с нулевым знанием, с помощью которого Алиса убеждает Боба, что она знает закрытый ключ Кэрол [888]. Пусть открытый ключ Кэрол - е, ее закрытый ключ - d, а модуль RSA - и.
(1) Алиса и Боб выбирают случайное А: и от, для которых
km = e (mod n)
Числа они должны выбирать случайным образом, используя для генерации к протокол бросания монеты, а затем вычисляя от. Если и £, и от больше 3, протокол продолжается. В противном случае числа выбираются заново.
(2) Алиса и Боб генерируют случайный шифротекст С. И снова они должны воспользоваться протоколом бр о-сания монеты.
(3) Алиса, используя закрытый ключ Кэрол, вычисляет М=С" modл
Затем она вычисляет
и посылает X Бобу.
(4) Боб проверяет, что Tmod n^ С. Если это так, то он убеждается в правильности заявления Алисы .
Аналогичный протокол можно использовать для демонстрации возможности вскрытия проблемы дискрета о-го логарифма [888].