Katie (uralpanda) wrote,
Katie
uralpanda

Category:

Слепая подпись Чаума

Для себя, а то запамятовала. Изящно, да? :)
Понятие слепой подписи было введено Д. Чаумом, который также предложил первые варианты ее реализации. Под слепой подписью понимается двухключевая криптосистема, которая позволяет осуществить подписывание электронных сообщений таким образом, чтобы подписывающая сторона не имела доступа к информации, содержащейся в подписываемом сообщении. Такое на первый взгляд нелепое требование в ряде криптографических систем имеет очень большое значение. Слепая подпись используется, например, в системах тайного электронного голосования и электронных деньгах, т.е. в таких криптографических системах, где требуется обеспечить решение задачи неотслеживаемости.
В случае эмиссии электронных монет нужно обеспечить их анонимность, то есть невозможность определить владельца по уникальному номеру монеты. Для этого банк, эмитирующий монеты по запросу их владельца, подписывает монеты вслепую.
В случае проведения электронного голосования выбор избирателя является тайной, поэтому избирательная комиссия подписывает бюллетень вслепую.

Сама процедура слепой подписи требует от одного из участников согласия на то, что он может подвергнуться некоторым посягательствам путем приписывания ему определенных обязательств, которые он бы не хотел брать на себя (имеется в виду, что при предъявлении подписанного цифрового конверта и принудительном его вскрытии станет известно содержание конверта, чего автор сообщения в конверте изначально избегает).

Рассмотрим протокол слепой подписи Чаума, основанной на уже известной криптосистеме RSA. Пусть субъект А желает подписать некоторое сообщение M у субъекта Б. Для этого необходимо осуществить следующие шаги:
1.
Пользователь А (субъекты являются пользователями данной криптосистемы) генерирует случайное простое число k, такое, что НОД(k, N) = 1, где N – часть открытого ключа пользователя Б.

2.
Далее он вычисляет значение , которое предоставляет для подписывания. Подписывающий не может получить доступ к сообщению M, поскольку оно зашифровано путем наложения на него "разового" ключа ke и использованием операции модульного умножения.

3.
Пользователь Б подписывает сообщение M' в соответствии с процедурой подписывания в криптосистеме RSA: .


Сформировав подпись S', подписывающий также не имеет возможности получить доступ к значению Md, поскольку оно зашифровано путем наложения на него "разового" ключа k.
4.
Используя расширенный алгоритм Евклида, пользователь А вычисляет для числа k мультипликативно обратный элемент k-1 в поле вычетов по модулю N и восстанавливает подпись для сообщения M, а именно: .


Таким образом, цель достигнута – пользователь А сформировал правильную подпись пользователя Б, соответствующую сообщению M, причем он уверен, что подписывающий не знает содержания сообщения M.

Отсюда
Tags: Информационные технологии
Subscribe
  • Post a new comment

    Error

    default userpic

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 0 comments