Интернет магазин китайских планшетных компьютеров



Компьютеры - Атака по сторонним каналам - Типы side-channel атак

23 января 2011


Оглавление:
1. Атака по сторонним каналам
2. Введение
3. Классификация side-channel атак
4. Типы side-channel атак
5. Перехват ван Эйка



  • Probing attacks
  • Fault-induction attacks
  • Timing attacks
  • Power analysis attacks
  • Electromagnetic analysis attacks

Probing attacks

Инвазивная, пассивная атака. Для получения информации компьютер вскрывается и исследуется каждый провод по которому идут данные, или же с помощью микроскопа исследуется состояние ячеек памяти. Используется оборудование: зондирующая установка, включающая в себя микроскопы и микроманипуляторы для установки щупов на поверхности чипа. Порядок стоимости — 10000$. Чтобы упростить наблюдение криптоаналитик обычно замедляет clock.

Fault-induction attacks

Активная атака. Основная идея — осуществление различных воздействий на шифратор с целью возникновения искажения информации на некоторых этапах шифрования. Наиболее распространенные методы воздействия :

  1. увеличение напряжения питания криптосистемы, в несколько раз превышающее максимально допустимое значение;
  2. изменение конструкции шифратора;
  3. изменение частоты шифрующего устройства, при котором частота значительно превышает максимально допустимую;
  4. помещение конструкции в электромагнитное поле;
  5. повышение температуры некоторой части шифратора.

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

Способы борьбы с атакой на основе генерируемых ошибок:

  • добавление в шифрующий механизм датчиков воздействий, блокирующих шифратор при ненормальных параметрах системы;
  • вычисление контрольной суммы или вычислений;
  • экранирование шифратора, защищающее устройство от электромагнитных наводок.

Типы ошибок

Ошибки характеризуются определенными параметрами:

  • постоянные — переменные

Постоянные наносят устройству постоянный вред. Переменные, напротив, меняются со временем.

  • место расположения
  • время возникновения

Естественно, имеет смысл на заданную систему наводить только такие ошибки, которые дадут о ней какую-то неизвестную информацию. Таким образом fault-induction криптоанализ распадается на две ветви: первая изучает какие ошибки следует наводить на оборудование, вторая — как эти ошибки наводить на оборудование. Примеры fault-induction криптоанализа:

  1. атака на RSA-систему, использующую китайскую теорему об остатках ,
  2. дифференциальный криптоанализ DES ,
  3. дифференциальный криптоанализ систем, основанных на эллиптических кривых .

Timing attacks

Оказывается, для некоторых реализаций криптосистем время исполнения программы реализации может дать информацию о секретных параметрах. Суть состоит в том, что на разных платформах некоторые операции выполняются за различное время, так как зависящее от числа тактов процессора. При многократном измерении времени отклика системы на разные начальные данные эта информация может оказаться исчерпывающей. Таким образом, атакующая сторона может произвести высокоточные измерения времени, за которое шифратор выполняет некоторые операции, и получить предположения о ключе. Идея впервые была высказана Kocher, написавшим работы по данному типа атаки в 1996 году. и впервые применена на практике против системы RSA использующей алгоритм Монтгемери . В описывается timing attack на AES открывающая ключ за 4000 измерений. Выделяют степени подверженности алгоритмов данному типу атаки:

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

Из распространенных алгоритмов атаке по времени подвержены DES, IDEA и RC5.

Способы борьбы с атакой по времени.

  1. Осуществлять все операции за одинаковое число тактов процессора. Однако это снижает эффективность алгоритма, так как время, затраченное на любую операцию, должно быть равно максимальному времени выполнения самого сложного и затратного действия. Также можно делать дополнительные рандомизированные задержки или добавлять случайные величины в алгоритм. Это затрудняет работу криптоаналитика, однако, недостаточно для абсолютной защищенности.
  2. Лучший вариант — отсутствие в алгоритме операций, время обработки которых зависит от входных данных. В таком случае, атака по времени становится невозможной.

Power analysis attacks

Пассивная атака, предложенная Полом Кохером совместно с компанией Cryptographic Research. Суть данной атаки состоит в том, что в процессе работы шифратора криптоаналитик с высокой точностью измеряет мощность устройства. Например, на рисунке изображена зависимость энергопотребления компьютера, выполняющего шифрование DES. Явно просматриваются начальная стадия инициализации, 16 раундов шифрования и завершающая стадия. Более детальный анализ может дать информацию о порядке конкретных операций.

Способы борьбы с атакой по потребляемой мощности.

  • Балансировка мощности, потребляемой шифратором. То есть производится действия по поддержанию постоянного уровня потребляемой энергии, независимо от времени. Распространенными способами являются добавление в схему ложных элементов, на которых выполняются лишние операции. Это и обеспечивает дополнительное потребление энергии. Таким образом, если при работе устройства потребляемая энергия постоянна, то атаки по потребляемой мощности невозможны.
  • Снижение мощности/величины сигнала. Реализуемо либо с помощью оптимального выбора операций, либо с помощью физической защиты шифратора. Данный способ борьбы с атакой не гарантирует отсутствие утечки информации, так как нельзя снизить уровень сигналов до нуля.
  • Наложение шумов. Затрудняет действия криптоаналитика, заставляя делать большее число выборок при атаке. Также не гарантирует абсолютную защищенность устройства.
  • Изменение алгоритма. Добавление ложных действий. Это усложняет задачу криптоаналитика, однако, замедляет работу устройства и снижает ее эффективность.
  • Экранирование. Данный метод защиты очень эффективен и способен снизить вероятность успешной атаки до нуля. Однако экранирование является дорогостоящей защитой, а также значительно увеличивает размеры устройства.

Differential Fault Analysis

В 1990 году Эли Бихам и Ади Шамир сформулировали новый способ взлома криптосистем — дифференциальный криптоанализ. Данный метод последовательно рассматривает пары шифротекстов и соответствующих открытых текстов. В исходных текстах конкретной пары фиксируется некоторое различие, за которым впоследствии наблюдают криптоаналитики по мере шифрования на каждом этапе. Различие может задаваться определенной функцией, аргументами которой являются два текста. Далее рассматривается различие полученных зашифрованных текстов, и ставится в соответствие текущему ключу шифрование некоторое значение вероятности того, что этот тестируемый ключ верный.

Аналогичные сравнения проводятся и для других ключей. Имеются следующие виды различий: входное, текущее и выходное. Каждое из них имеет вероятностное значение. Различия называются характеристиками, если они с наибольшей вероятностью вызывают конкретные различия шифротекстов. А пара исходных текстов, соответствующая таким различиям, называется правильной парой. Такие пары и позволяют определить истинный ключ или его фрагменты. Даже если правильный подключ нельзя определить однозначно, то вероятность встретить его будет выше, чем у остальных «претендентов».

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

То есть создается нужное число пар открытых текстов, соответствующих какой-либо характеристике, и их шифротекстов. Заполняется таблица возможных вариантов искомой части ключа. Искомое значение должно повторяться для всех текстов, так как оно применялось для зашифровки.

Однако есть проблемы, связанные с тем, что пока криптоаналитик не будет иметь определенного количества предположений, шансы на нахождение ключа практически равны нулю. Отсюда возникает проблема хранения большого объема данных и длительности поиска ключа.

Поэтому существует несколько способов обойти данные технические ограничения:

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

Electromagnetic analysis attacks

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



Просмотров: 6934


<<< Аутентификация в Интернете