Криптосистема Крамера – Шупа - Cramer–Shoup cryptosystem

Система Крамера – Шупа представляет собой алгоритм шифрования с асимметричным ключом и была первой эффективной схемой, которая доказала свою защиту от атак с адаптивным выбранным зашифрованным текстом с использованием стандартных криптографических допущений. Его безопасность основана на вычислительной сложности (широко предполагаемой, но не доказанной) решающего предположения Диффи – Хеллмана. Разработанный Рональдом Крамером и Виктором Шупом в 1998 году, он является расширением криптосистемы Эль-Гамаля. В отличие от ElGamal, который чрезвычайно податлив, Крамер-Шуп добавляет другие элементы, чтобы гарантировать непостоянство даже против находчивого злоумышленника. Такая неподатливость достигается за счет использования универсальной односторонней хеш-функции и дополнительных вычислений, в результате которых получается зашифрованный текст, который вдвое больше, чем в Эль-Гамале.

Адаптивные атаки по выбранному зашифрованному тексту

Определение безопасности, полученное Крамером-Шоупом, формально называется « неразличимость при атаке с использованием адаптивного выбранного шифротекста » (IND-CCA2). Это определение безопасности в настоящее время является самым строгим определением, известным для криптосистемы с открытым ключом: оно предполагает, что злоумышленник имеет доступ к оракулу дешифрования, который расшифрует любой зашифрованный текст, используя секретный ключ дешифрования схемы. «Адаптивный» компонент определения безопасности означает, что злоумышленник имеет доступ к этому оракулу дешифрования как до, так и после того, как он наблюдает за конкретным целевым шифротекстом для атаки (хотя ему запрещено использовать оракул для простого дешифрования этого целевого зашифрованного текста). Более слабое понятие защиты от атак с неадаптивным выбранным шифротекстом (IND-CCA1) позволяет злоумышленнику получить доступ к оракулу дешифрования только до наблюдения за целевым шифротекстом.

Хотя было хорошо известно, что многие широко используемые криптосистемы были незащищены от такого злоумышленника, в течение многих лет разработчики систем считали атаку непрактичной и представляющей в основном теоретический интерес. Ситуация начала меняться в конце 1990-х годов, особенно когда Даниэль Блейхенбахер продемонстрировал практическую адаптивную атаку с выбранным зашифрованным текстом против серверов SSL с использованием одной из форм шифрования RSA .

Крамер-Шуп был не первой схемой шифрования, обеспечивающей защиту от атак с адаптивным выбранным зашифрованным текстом. Наор – Юнг, Ракофф – Саймон и Долев – Дворк – Наор предложили доказуемо безопасные преобразования из стандартных схем (IND-CPA) в схемы IND-CCA1 и IND-CCA2. Эти методы безопасны при стандартном наборе криптографических предположений (без случайных оракулов), однако они полагаются на сложные методы доказательства с нулевым разглашением и неэффективны с точки зрения вычислительных затрат и размера зашифрованного текста. Множество других подходов, в том числе Bellare / Rogaway «ы OAEP и Фудзисак-Окамото достижение эффективных конструкций с использованием математической абстракции , известной как случайный оракул . К сожалению, для реализации этих схем на практике требуется замена некоторой практической функции (например, криптографической хеш-функции ) вместо случайного оракула. Растущее количество свидетельств указывает на небезопасность этого подхода, хотя никаких практических атак на развернутые схемы продемонстрировано не было.

Криптосистема

Крамер – Шуп состоит из трех алгоритмов: генератора ключей, алгоритма шифрования и алгоритма дешифрования.

Генерация ключей

  • Алиса генерирует эффективное описание циклической группы порядка с двумя отдельными случайными генераторами .
  • Алиса выбирает пять случайных значений из .
  • Алиса вычисляет .
  • Алиса публикует вместе с описанием свой открытый ключ . Алиса сохраняет в качестве своего секретного ключа . Группа может быть разделена между пользователями системы.

Шифрование

Чтобы зашифровать сообщение Алисе под ее открытым ключом ,

  • Боб превращается в элемент .
  • Боб выбирает случайное значение из числа , а затем вычисляет:
  • Боб отправляет зашифрованный текст Алисе.

Расшифровка

Чтобы расшифровать зашифрованный текст с помощью секретного ключа Алисы ,

  • Алиса вычисляет и проверяет это . Если этот тест не проходит, дальнейшее дешифрование прерывается и вывод отклоняется.
  • В противном случае Алиса вычисляет открытый текст как .

Этап дешифрования правильно расшифровывает любой правильно сформированный зашифрованный текст, поскольку

, а также

Если пространство возможных сообщений больше, чем размер , то Крамер – Шуп может использоваться в гибридной криптосистеме для повышения эффективности длинных сообщений.

Рекомендации

  1. ^ Даниэль Блейхенбахер. Атаки на выбранный зашифрованный текст против протоколов, основанных на стандарте шифрования RSA PKCS # 1. Достижения в криптологии - CRYPTO '98. [1]
  2. Ран Канетти, Одед Гольдрайх , Шай Халеви. Повторение методологии случайного оракула . Журнал ACM, 51: 4, страницы 557–594, 2004.