Слепая подпись Чаума основана на криптосистеме RSA.
Пусть пользователь А желает подписать некоторое сообщение М у пользователя В таким образом, чтобы последний не мог прочесть сообщение.
Для этого необходимо совершить следующие шаги:
- Пользователь А генерирует случайное простое k, что НОД(k, n) = 1, где n - часть открытого ключа пользователя В.
- Затем А вычисляет значение и предъявляет его пользователю В, чтобы последний подписал М' в соответствии со стандартной процедурой подписания в RSA. Подписывающий не может прочесть сообщение М, поскольку оно преобразовано путем наложения на него разового ключа ke с использованием операции модульного умножения.
- Пользователь В подписывает сообщение М': . По значению подписи подписывающий не может вычислить сообщение. Но по значению Md легко вычислить М, поэтому после получения значения S пользователь А должен хранить его в секрете от подписавшего.
- После получения от В значения S', используя расширенный алгоритм Евклида, пользователь А вычисляет для числа k мультипликативно обратный элемент k-1 в поле вычетов по модулю n и формирует подпись пользователя В к сообщению М: .