Групповая подпись
— схема реализации
электронной подписи
, которая позволяет члену группы анонимно подписывать сообщение от имени группы.
Концепцию групповой подписи представили
Дэвид Чаум
и Евген Ван Хейст (
англ.
Eugene Van Heyst
) в 1991 году. Примером задачи была ситуация, когда проверяющий лишь удостоверяется, что подписант действительно является сотрудником некоторого подразделения (членом группы), но не требуется уточнять, кто он. При этом в спорном случае администратор с дополнительными полномочиями может по подписи установить личность подписанта. Другое применение — ключи доступа в ограниченных зонах, где перемещения отдельных сотрудников постоянно не отслеживаются, но разрешается доступ только для членов группы.
Существенной особенностью групповой подписи является наличие администратора группы, который обеспечивает добавление в группу и имеет возможность раскрыть подписанта в случае возникновения споров. В некоторых реализациях системах обязанности по добавлению участников и раскрытию подписанта разделены между менеджером членства и менеджером отзыва.
Содержание
Схема групповой подписи
Следующий протокол предусматривает одного администратора
:
Администратор создаёт множество пар из открытых и закрытых ключей. Каждый член группы получает
уникальных закрытых ключей. (Если в группе
членов, то общее число пар ключей должно быть
.)
Администратор публикует все открытые ключи в случайном порядке, не уточняя, кому какие ключи принадлежат.
Для подписи член групп использует случайный секретный ключ из своего списка.
Проверяющий последовательно перебирает список открытых ключей, пока один из них не удостоверит, что подписант принадлежит данной группе.
В случае споров, администратор знает персональные списки открытых ключей и может узнать, кто был подписантом.
Предложенная схема обеспечивает:
правом подписи обладают только члены группы подписывающих и каждый может подписать сообщение самостоятельно (в отличие от
множественной подписи
, где подпись коллективная);
проверяющий может убедиться, что подписант из группы подписывающих, но не может установить, кто именно (частичная анонимность);
сравнивая подписи под двумя одинаковыми сообщениями не должно быть понятно, один ли это подписант или нет;
при необходимости администратор группы может установить, кто сгенерировал подпись;
администратор не может объявить, что подпись принадлежит тому, кто её не накладывал;
даже если все члены группы, включая администратора, объединят усилия, они не могут создать подпись, принадлежащую не члену группы;
договорившаяся между собой подгруппа не может сгенерировать действительную подпись, которую администратор не сможет связать с одним из «заговорщиков».