Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ИБиЗИ[1].Ответы на вопросы.1.doc
Скачиваний:
5
Добавлен:
23.09.2019
Размер:
391.68 Кб
Скачать

15.2. Виды криптоаналитических атак.

Все атаки, использующие утечки данных по побочным каналам (side-channel attacks) можно разделить на две категории:

1. Пассивные (passive) атаки, в процессе реализации которых криптоаналитик лишь пассивно «прослушивает» шифратор с целью получения необходимой информации для ее последующего анализа.

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

Атака по времени выполнения

Начало подобным атакам положили работы Пола Кохера (Paul Kocher), прежде всего, статья [3], в которой была представлена атака по времени выполнения (timing attack). Данная атака использует тот факт, что на некоторых аппаратных платформах определенные операции могут выполняться за различное число тактов процессора. Результат – различное время выполнения операций. Соответственно, криптоаналитик может путем высокоточных замеров времени выполнения шифратором определенных операций может сделать какие-либо предположения о значении определенных фрагментов секретного ключа.

Атаки по потребляемой мощности

Еще одна из пассивных атак предложена также Полом Кохером при участии ряда других сотрудников американской компании Cryptographic Research: атака по потребляемой мощности (SPA – simple power analysis). Данная атака во многом похожа на предыдущую, однако, высокоточному замеру подлежит мощность, потребляемая шифратором в процессе выполнения криптографических преобразований.

Например, замер мощности, потребляемой шифратором в процессе выполнения раундов №№ 2 и 3 алгоритма DES. На рисунке отчетливо видны операции вращения ключевых регистров процедуры расширения ключа DES: перед вторым раундом вращение выполняется на 1 бит, а перед третьим – на два бита (стрелочки на рис.). Отчетливо видны различия между данными раундами (выделенные области) – эти различия могут проистекать, из-за того, что в этих раундах используются различные биты ключа. Соответственно, они могут быть проанализированы криптоаналитиком с целью получения какой-либо информации о ключе шифрования.

В 2000 г. была предложена атака, использующая высокоточные измерения электромагнитного излучения шифратора, возникающего в процессе шифрования. Аналогично SPA и DPA, рассматриваются два варианта такой атаки: SEMA (simple electromagnetic analysis) и DEMA (differential electromagnetic analysis). В качестве атакуемых устройств избрали криптографические смарт-карты, реализующие алгоритмы DES, RSA и COMP128. Во всех трех случаях атака методом DEMA позволила вычислить значения ключей шифрования.

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

Практически реализуемая атака, основанная на сообщениях об ошибках (error message leakage), была предложена известным криптологом Сержем Воденэ (Serge Vaudenay) в [9].

Метод бумеранга (boomerang attack) предложен в 1999 г. известнейшим криптоаналитиком – профессором университета Беркли (Калифорния, США) Дэвидом Вагнером (David Wagner). Данный метод, фактически, является усилением дифференциального криптоанализа и состоит в использовании «квартета» (т.е. четырех вместо двух) открытых текстов и соответствующих им шифртекстов, связанных следующими соотношениями:

Сдвиговая атака

Сдвиговая атака (slide attack) предложена в 1999 г. Алексом Бирюковым (Alex Biryukov) из института Technion, Хайфа, Израиль и упоминавшимся выше Дэвидом Вагнером. Уникальность атаки состоит в том, что ее успешность не зависит от количества раундов атакуемого алгоритма. Однако, с помощью сдвиговой атаки можно вскрыть только те алгоритмы, раунды которых являются идентичными.

Метод интерполяции (interpolation attack) предложен в 1997 г. двумя датскими криптологами: Томасом Якобсеном (Thomas Jakobsen) и Ларсом Кнудсеном (Lars Knudsen) – и описан в их работе. Атаке подвержены алгоритмы шифрования, использующие достаточно простые алгебраические операции, в результате чего криптоаналитик может построить некий полином, определяющий соотношение между шифртекстом и открытым текстом.

Невозможные дифференциалы

В 1998 г. изобретателями дифференциального криптоанализа Эли Бихамом (Eli Biham) и Эди Шамиром (Adi Shamir) совместно с упоминавшимся выше Алексом Бирюковым были опубликованы две работы, в которых был предложен принципиально новый вариант дифференциального криптоанализа, использующий невозможные дифференциалы (impossible differentials). Краткое описание:

  1. Выбирается нужное количество пар открытых текстов с требуемой разностью; получаются соответствующие им шифртексты.

  2. Выполняется анализ полученных данных, в рамках которого все варианты ключа шифрования, приводящие к невозможным дифференциалам, считаются неверными и отбрасываются.

  3. В результате остается единственный возможный вариант ключа или некое подмножество ключевого множества, не приводящие к невозможным дифференциалам; в случае подмножества может быть использован его полный перебор для нахождения верного ключа.

Дифференциалы с нулевой вероятностью могут быть заменены дифференциалами с минимальной вероятностью – действия криптоаналитика при этом аналогичны описанным выше.

Атаки на алгоритм шифрования:

Категория 1. Криптоаналитик имеет только возможность пассивного прослушивания некоего канала, по которому пересылаются зашифрованные данные. В результате у злоумышленника есть лишь набор шифртекстов, зашифрованных на определенном ключе. Такая атака называется атакой с известным шифртекстом. Она наиболее сложна, но данный вариант атаки наиболее распространен, поскольку он является самым «жизненным» – в подавляющем большинстве реальных случаев криптоаналитик не имеет возможности получить больше данных.

Категория 2. Предполагает, что у криптоаналитика есть некое шифрующее устройство с прошитым ключом шифрования, который и является целью атаки (например, криптографическая смарт-карта). Криптоаналитик может выполнять с шифратором определенные (допускаемые шифратором и его техническим окружением, а также тактическими условиями осуществления атаки) действия для получения требуемой ему информации, например, «прогонять» через шифратор какие-либо открытые тексты для получения соответствующих им шифртекстов.

В зависимости от данных, которые криптоаналитик может «добыть» у шифратора, существуют следующие виды атак:

1. Атака с известным открытым текстом. Предполагает наличие у криптоаналитика некоторого количества пар текстов, каждая из которых представляет собой открытый текст и соответствующий ему шифртекст.

2. Атака с выбранным открытым текстом. У криптоаналитика есть возможность выбора открытых текстов для получения соответствующих им шифртекстов.

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

4. Атака с выбором шифртекста. Криптоаналитик может выбирать шифртексты и, прогоняя их через шифратор, получать путем расшифрования соответствующие им открытые тексты.

5. Адаптивная атака с выбором шифртекста. По аналогии с описанными ранее атаками ясно, что криптоаналитик может многократно выбирать шифртексты для их расшифрования с учетом предыдущих результатов.