Система выработки общего ключа
Схема Блома — в криптографии, схема распределения ключей.
В схеме Блома доверенная сторона раздаёт каждому участнику открытый и закрытый ключ. Участники, обмениваясь между собой только открытыми ключами по незащищённым каналам связи могут сгенерировать секретный сеансовый ключ для общения между собой.
Надёжность схемы напрямую зависит от размера секретной матрицы, используемых в схеме. Для восстановления секретной матрицы (точнее, любой выполняющей аналогичную функцию) необходимо иметь число ключей, равное количеству строк матрицы.
Схема используется в протоколе HDCP в целях защиты видео от копирования.
ИнициализацияДоверенная стороны выбирает симметричную матрицу Dk,k над конечным полем .
Добавление участника
Когда новый участник хочет присоединиться к группе, доверенная сторона выбирает для него новый открытый ключ, который представляет собой вектор (столбец) I размера k. Далее доверенная сторона вычисляет закрытый ключ g:
g = Dk,kI
Открытый и закрытый ключ сообщаются участнику по надёжному каналу без прослушивания.
Установление сессии
Если два участника хотят установить между собой секретный канал, они посылают друг другу по открытому каналу свои открытые ключи. Далее каждый из них умножает свой закрытый ключ на открытый ключ другой стороны. Если IA,gA — открытый и закрытый ключ одной стороны, IB,gB — ключи другой стороны, то:
В результате у них получится одно и тоже число (это следует из симметричности матрицы D), которое и будет использоваться как общий сеансовый ключ.
Надёжность схемы
Для вычисления общего секретного ключа двух сторон нужно знать секретную матрицу. Её можно восстановить, если получить k линейно-независимых идентификаторов.
Слепая подпись
Слепая подпись (Blind Signature) — разновидность ЭЦП, особенностью которой является то, что подписывающая сторона не может точно знать содержимое подписываемого документа. Понятие слепой подписи придумано Дэвидом Чаумом
Описание
Основная идея слепых подписей заключается в следующем. Отправитель А посылает документ стороне В, который В подписывает и возвращает А. Используя полученную подпись, сторона А может вычислить подпись стороны В на более важном для себя сообщении t. По завершении этого протокола сторона В ничего не знает ни о сообщении t, ни о подписи под этим сообщением.
Эту схему можно сравнить с конвертом, в котором размещён документ и копировальный лист. Если подписать конверт, то подпись отпечатается на документе, и при вскрытии конверта документ уже будет подписан.
Цель слепой подписи состоит в том, чтобы воспрепятствовать подписывающему лицу В ознакомиться с сообщением стороны А, которое он подписывает, и с соответствующей подписью под этим сообщением. Поэтому в дальнейшем подписанное сообщение невозможно связать со стороной А.
Алгоритмы слепой подписи
Полностью слепая подпись
Дана ситуация: Боб - нотариус. Алисе нужно, чтобы он подписал документ не имея никакого представления о его содержании. Боб только заверяет, что документ нотариально засвидетельствован в указанное время. Тогда они действуют по следующему алгоритму:
Алиса берёт документ и умножает его на случайное число. Оно называется маскирующим множителем.
Алиса отсылает документ Бобу
Боб подписывает документ и отсылает обратно
Алиса удаляет маскирующий множитель и получает свой документ с подписью.
Этот протокол работает только если функции подписи и умножения коммутативны.
Слепая подпись
Боб готовит n документов на каждом из которых написано некоторое уникальное слово (чем больше n, тем меньше у Боба шансов смошенничать).
Боб маскирует каждый документ уникальным маскирующим множителем и отправляет их Алисе.
Алиса получает все документы и случайным образом выбирает n-1 из них.
Алиса просит Боба выслать маскирующие множители для выбранных документов.
Боб делает это.
Алиса вскрывает n-1 документов и убеждается что они корректны.
Алиса подписывает оставшийся документ и отсылает Бобу.
Теперь у Боба есть подписанный Алисой документ с уникальным словом, которое Алиса не знает.
Протокол RSA
Первая реализация слепых подписей была осуществлена Чаумом с помощью криптосистемы RSA:
Алиса выбирает случайным образом число из диапазона от 1 до n. Затем она маскирует m, вычисляя:
Боб подписывает t:
Алиса снимает маскировку с td, вычисляя
Результатом является
Чаум придумал целое семейство более сложных алгоритмов слепой подписи под общим названием неожиданные слепые подписи. Их схемы ещё сложнее, но они дают больше возможностей.
Применение
Банковские системы