Рейтинг:1

Атаки по времени: симметричные и асимметричные алгоритмы

флаг us

Есть заявление, что я не могу дать ссылку;

«Поскольку временные характеристики симметричных алгоритмов не так сильно зависят от ключа, как асимметричные алгоритмы, они более устойчивы к временным атакам».

Это правда?

kelalaka avatar
флаг in
Секретность в открытом канале, странно!
NB_1907 avatar
флаг us
Не потому что секретность, бумага не на английском языке!
Рейтинг:5
флаг ng

«Поскольку временные характеристики симметричных алгоритмов не так сильно зависят от ключа, как асимметричные алгоритмы, они более устойчивы к временным атакам».

Это во многом верно, но не совсем так.

Зависящие от данных (в том числе от ключа) временные характеристики происходят в основном из

  1. Условное выполнение, как это происходит в если этот бит секретного показателя степени/множителя установлен, то… часто встречается при RSA и ECC. В симметричных алгоритмах такое редко встречается, и когда есть возможность такого условного выполнения (например, в AES, XOR с фиксированным полиномом, когда установлен бит), есть простые альтернативы без него.
  2. Умножение, которое на многих процессорах требует времени в зависимости от аргумента. В симметричных алгоритмах такое редко встречается (исключение: ИДЕЯ), но это главное для RSA и ECC (за исключением бинарных кривых).
  3. Разделение (редко используется в симметричном шифровании, а также на уровне инструкций в асимметричном шифровании, потому что оно медленное, особенно при отсутствии аппаратной поддержки).
  4. Зависимое от данных вращение; это редкость (исключение: RC5, RC6).
  5. Поиск в таблицах (например, в таблицах подстановки) из-за эффектов кеша. Это распространено в некоторых симметричных алгоритмах, включая DES и AES, и является наиболее важным исключением из цитаты. Однако во многих других алгоритмах, включая хэши (например, SHA-256) и Чача потоковый шифр. А зависящие от кеша временные зависимости невелики, и поэтому их довольно трудно использовать удаленно (другое дело, когда злоумышленники имеют доступ к ЦП: они могут проводить измерения времени с большей точностью и могут сбрасывать кеш; они также могут исследовать кеш, но тогда это уже не чистая атака по времени).

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

b degnan avatar
флаг ca
Я думаю, ты действительно попал в точку. Некоторые мелочи, которые вы, вероятно, знаете. Деление также всегда многоцикловое, если только у вас нет особых случаев. Когда мы выполняем деление с фиксированным временем для Y/X, у меня есть аппаратный блок, который выполняет 1/X, что занимает 4 цикла, а затем результат 1/X * Y, который также занимает 4 цикла. В основном это не стоит делать, так как используется так много кремния, если только вы не знаете, что будете делать эту операцию часто. По этой причине я подозреваю, что на практике мы никогда не увидим деления в шифре.

Ответить или комментировать

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