id: Гость   вход   регистрация
текущее время 22:08 26/04/2024
Владелец: unknown (создано 02/01/2012 23:56), редакция от 17/01/2012 09:38 (автор: unknown) Печать
Категории: криптография, криптоанализ, алгоритмы, симметричное шифрование, атаки
https://www.pgpru.com/Новости/2012/ПерваяОценкаВозможностиПрактическогоВзломаAES15ТриллионаUSИМенееГодаВычислений
создать
просмотр
редакции
ссылки

02.01 // Первая оценка возможности практического взлома AES: 1.5 триллиона US$ и менее года вычислений


Исследования в области специальных аппаратных средств для взлома шифров насчитывают почти столетнюю историю. В 1938 году польские математики, возглавляемые Марианом Режевски, создали электромеханическое устройство под названием "Бомба" (Bomba Kryptologiczna), позволившее им взломать немецкий шифр Enigma за счёт полного перебора положений 17576 роторов. Этот успех был развит английскими криптографами (с ведущей ролью Алана Тюринга и Гордона Велчмана), которые создали удачные машины для взлома шифров, позволившие силам союзников читать сообщения, зашифрованные Энигмой в ходе Второй Мировой войны. Параллельные усилия в криптоанализе другого немецкого шифра, Lorenz SZ40/42, привели к созданию первого в мире программируемого компьютера Colossus. Он содержал 1500 вакуумных ламп и был способен обрабатывать 5000 знаков в секунду.


В 1980 году Померанц и др. создали аппаратную архитектуру, названную Quasimodo для факторизации больших чисел с помощью алгоритма квадратичного решета. Quasimodo был построен, но не функционировал должным образом. Проект DES Cracker (также известный как Deep Crack) — это машина параллельного поиска ключа, разработанная организацией EFF в конце 1990-х с суммарным бюджетом всего 210000 US$. Deep Crack содержал около 1500 специальных микросхем и требовал по крайней мере 9 дней для нахождения 56-битного ключа DES за счёт атаки "грубой силой". Также в конце 1990-х Шамир предложил TWINKLE — электрооптическое устройство для выполнения шага просеивания в алгоритме NFS (решета числового поля). По его оценкам одного такого чипа было бы достаточно, чтобы за приемлемое время факторизовать 512-битные числа и, соответственно, взламывать 512-битные RSA-ключи. TWIRL, улучшенная модификация TWINKLE предполагала уменьшение полного времени просеивания до 10 минут. Оба эти устройства остались чисто гипотетическими, но привлекли значительное внимание криптосообщества и вызвали рост последующих исследований. Типичным примером стало появление устройства COPACOBANA на основе паралльной архитектуры FPGA (ПЛИС) для успешного криптоанализа шифров с 64-битным ключом (KeeLoq, DES и A5/1).


Дальнейший интерес связан с изучением возможностей графических процессоров (GPU) и специализированных микросхем ASIC.


Исследователи Алекс Бирюков и Йохан Гроссшадль из лаборатории алгоритмики, криптологии и безопасности Университета Люксембурга (LACS) впервые предоставили оценки возможности построения суперкомпьютера для практического взлома AES на основе передовых технологий GPU/ASIC/VLSI, использованных в NVIDIA GT200b. По их расчётам на сегодняшний момент возможности существующего "железа" позволяют осуществлять атаки, на проведение которых требуется 2100 вычислений. Следует понимать, что эти атаки можно считать практически осуществимыми только гипотетически (например, если вся энергетика, финансы и инфраструктура США будут направлены только на взлом AES в течении года, то это можно считать практически осуществимым взломом, по крайней мере в оценочном плане).


"Практическому взлому" можно считать подверженным не только AES-128, но и AES-256. Следует опять же различать, что даже если гипотетический противник, обладающий доступными в масштабе крупной страны сверхресурсами, потратит их на осуществление взлома, его практичность всё равно остаётся под сомнением: противнику нужно получить доступ к слишком большой утечке данных в рамках исполнения протокола, что может встречаться скорее в лабораторных условиях и ограничивает оценочный характер этого результата ещё в большей степени.


Исследователи рассмотрели две ранее известные атаки на полнораундовый AES, требующие исполнения 2100 операций. Первая атака — на связанных ключах против AES-256 (Related Key Cryptoanalysis — RKC) — 299.5 шагов исполнения и 278 памяти. Такая атака непрактична из-за малой вероятности появления связанных ключей в каком-либо практически используемом криптопротоколе. В простейшем случае используется простое соотношение K' = KC, улучшенная версия этой же атаки (бумеранг-атака со связанными ключами) использует соотношение K' = F−1 (F(K) ⊕ C) = RC (K), где K, K' — неизвестные связанные ключи, F — раундовая функция ключевого расписания AES-шифрования, C — навязываемая атакующим константа. Несмотря на слишком сильную модель атакующего и невероятное количество предоставляемых ему данных, такая атака преодолевает психологический барьер сложности 2100.


Вторая атака основана на размене ключей-времени-памяти (Time-Memory-Key — TMK) против AES-128, также известна как атака с множественными целями. В этой атаке фиксированный открытый текст шифруется множеством различных секретных ключей, а целью атакующего является нахождение по крайней мере одного из этих ключей. Используя 232 целей, TMK-атака имеет сложность предвычислений 296, после чего каждый новый секретный ключ может быть найден с затратами времени 280 и памяти 256. Впервые атака такого рода предложена Хеллманом для инвертирования хэш-функций и использована для создания радужных таблиц. Идея состояла в просчёте хэш-цепочек и отбрасывании всех промежуточных значений кроме стартового и конечного. Пары конечных и стартовых цепочек сохранялись в памяти, сортировались в памяти по конечным значениям. В ходе атаки противник берёт шифртекст (хэш-значение) и повторяет функцию до нахождения конечного значения цепочки. Сравнивая конечное значение со списком уже просчитанных, он может найти нужную цепочку и требуемый прообраз.


Применительно к шифрам TMK-атака позволяет перебирать только часть пространства поиска за счёт оптимизации по требуемому параметру. В случае если сообщения (файлы) с одним и тем же заголовком шифруются множественными ключами, такую ситуацию можно признать практичной. Если пространство поиска N = 2n (n = 128 для AES-128), то располагая шифрованием фиксированного открытого текста Dk различными ключами, необходимо перебрать только N / Dk точек в пространстве. Для этого нужно использовать t / Dk шифротаблиц вместо t, что означает уменьшение памяти до M = mt / Dk (где m — количество начальных-конечных точек в таблице Хеллмана). Затраты времени T = t / Dk · t · Dk = t2 на основе исходной оптимизации Хеллмана (меньше проверок таблиц — больше точек с данными). Наконец, правило останова для матрицы N = mt2 — состояние минимизации расходов покрытия матрицы в результате проявления эффекта парадокса дней рождения. Используя правило останова для матрицы и сокращая параметры m и t, получаем формулу оптимизации: N2 = T(MDk)2.


Используя в качестве образца AES-128, атакующий за счёт 232 доступных шифрований фиксированного текста на различных неизвестных ключах восстанавливает один из этих ключей предвычислением 296 шагов и 256 обращений к памяти для табличного хранилища размером 261 байт и затрачивает в целом 280 шагов по времени для поиска ключа. Важным свойством является также то, что атака не является обязательно атакой с подобранным открытым текстом, так как конкретное значение открытого текста не важно. Для осуществления атаки быстрее, чем полным перебором, противник может найти, какое значение открытого текста наиболее часто используется в целевом приложении, собрать данные для различных ключей и провести атаку. Таким образом TMD-атака является более практичной, чем атака на связанных ключах (RKC).


Обе атаки требуют примерно одинаковых затрат и оборудования. Исследователи считают, что организация, способная потратить триллион долларов (что сопоставимо с размером годового оборонного бюджета США), может взломать AES-256 в сценарии RKC и подобных атак в течении года вычислений. Использование десятой части такого бюджета (100 миллиардов US$) достаточно для проведения TMK-атаки на AES-128 с 232 целями. Такая атака потребует год предвычислений, после чего каждый новый ключ может быть вычисляем за 280 AES-операций, т.е. каждые 8 минут на таком "менее масштабном" суперкомпьютере. Исследователи рассматривают гипотетический проект такого компьютера, названный ими CAESAR (“Cryptanalytic AES ARchitecture”). Эта гипотетическая машина (как TWINKLE или TWIRL), хотя и находится за границей реально доступных ресурсов, но в отличие от "кофейников Шамира", опирается на существующую технологию. Некоторые предположения и близкие прогнозы авторов касаются памяти. Так, реалистично ожидать появления жёстких дисков размером 10-100 терабайт, которых в таком случае потребуется всего 3 · 1010 — 3 · 109. Столько же потребуется и процессоров. Расходы энергии составят 4 тераватта, что превосходит годовое потребление энергии в США (3.34 тераватта), но развитие энергосберегающих вычислительных технологий позволяют несколько приблизить и эти границы.


В качестве перспективных факторов авторы рассматривают также:


  • Продолжение действия закона Мура для ближайших десятилетий, хотя и с некоторым замедлением.
  • Успехи в криптоанализе AES, снижающие сложность атак. Такие успехи являются спорадическими и непредсказуемыми, поэтому оценить влияние этого фактора сложно.
  • Появление магнито-электронных (спинтронных) компьютеров со значительно сниженным энергопотреблением.
  • Появление оптоэлектронных компьютеров, значительно снижающих энергопотребление для массированных вычислений.
  • Появление 3D-оптических накопителей. Уже сейчас достижим размер в 1 терабайт для дисков, аналогичных DVD. Возможно появление 100-терабайтных носителей.
  • Распространение квантовой голографии. В 2009 году уже был продемонстрирован результат возможности записи 3 эксабайт (261.5 байт) на квадратный дюйм.

По мнению исследователей, проект гипотетического суперкомпьютера CAESAR демонстрирует узкие места в затратах энергии и количестве памяти, но свидетельствует о снижении оценок практической стойкости AES в долговременной перспективе.


Источник: Cryptology Eprint Archive


 
— Гость (05/01/2012 11:00)   <#>
Интересно, при оценке стоимости подобных проектов просто умножается требуемое количество микросхем нужной производительности на среднюю рыночную стоимость подобного кристалла, или просчитывается все цепочка, включая производство необходимого количества оборудования точного машиностроения, на котором будут производится технологические линии и т.д.? Производственные мощности ограничены и любая организация с любым бюджетом не в состоянии купить скажем вдвое больше нефти, чем добывается в год на Земле. Ну или ей придется вложить астрономические суммы и годы (если не десятилетия) времени в развитие добычи и транспортировки.
— unknown (05/01/2012 18:21, исправлен 05/01/2012 18:25)   профиль/связь   <#>
комментариев: 9796   документов: 488   редакций: 5664

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

We furthermore assume that the adversary has additional funds to cover other expenses such as designing the AES processor, designing and implementing dedicated storage for the TMD attack, operating the CAESAR supercomputer for a certain period of time (which is primarily energy costs), and so on. The exact amount of money needed for these additional expenses depends on many different factors (e.g. the resources of the adversary). For example, the adversary could be an organization that has its
own power plants, which significantly reduces the cost for operating large server farms which house the CAESAR supercomputer. In any case, it can be expected that these additional costs will be considerably below the 1 trillion US$ we assume for the manufacturing of AES processors; a reasonable estimation is 500 billion US$. Again, a total funds of 1.5 trillion US$ is not completely unrealistic when taking the annual budget deficit of the US as reference, which is expected to exceed 1.4 trillion US$ in the fiscal year 2009 [1]

Просчитывается вся цепочка, но прикидочно-округлённо. Это не самая интересная часть работы. Во время второй мировой войны США производили некоторых вооружений больше, чем было денег в бюджете. В случае особой необходимости всё может измеряться и не деньгами, они окончательно превращаются в условные знаки и бумажки.


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

— unknown (05/01/2012 18:47, исправлен 05/01/2012 18:55)   профиль/связь   <#>
комментариев: 9796   документов: 488   редакций: 5664

Кстати, по лимиту Ландауэра:


2128 · 2.85 · 10-21 = 9.7 · 1017 Дж
2100 · 2.85 · 10-21 = 3.6 · 109 Дж


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

— Elis (07/01/2012 01:26)   <#>
Интересно, а как выбирать "фиксированный текст" в TMT для AES в режиме гаммирования?
— unknown (07/01/2012 17:39, исправлен 07/01/2012 18:03)   профиль/связь   <#>
комментариев: 9796   документов: 488   редакций: 5664

TMTO атаки (Time Memory Trade-Off) и их разновидности TMD (Time Memory Data) и TMK (Time Memory Key) долгое время недооценивались, поэтому вопрос может показатья предсказуемым. К сожалению подробностей применения по режимам шифрования нет.


Работа, на которую ссылаются авторы A. Biryukov, S. Mukhopadhyay, and P. Sarkar. Improved time-memory trade-offs with multiple data. есть только на Springer, но в открытом доступе есть fileNew Application of time Memory Data Tradeoffs, Jim Hong and Palas Sharkar.


В частности в главе 1.2 развеивается миф о том, что TMTO-атаки действуют только против хэшей или блочных шифров в режиме гаммирования с несменяющимся вектором инициализации. Это устаревшие представления идут из оригинальной работы Хеллмана и некоторых её последующих толкований.


Далее в той работе рассматриваются TMTO-атаки со сменяющимися векторами инициализации против потоковых шифров, блочных шифров в режимах не только ECB (здесь, понятно нет IV), CTR, OFB, но и CBC, OMAC, CFB, TBC, OCB, CMC, EME, систем дискового шифрования, асимметричных алгоритмов шифрования и подписи с рэндомизацией и др.


Рассмотрен алгоритм конверсии CPA -> KPA (подобранный в известный открытый текст) для режима CBC. Конечно, все эти конвертеры снижают эффективность. Но атаковать по крайней мере протоколы с режимом счётчика, которые шифруют много сетевых пакетов данных с известными заголовками наверное при таких предположениях можно (что-то похожее на VPN, Tor; хотя там часто сменяется и ключ, и вектор инициализации; так что необходимого количества данных скорее всего не накопится).


Судя по тому, что авторы работы из новости занимались исследованием и построением таких конвертеров ранее, они знают о чём пишут и включили оценки TMTO-атак на AES из своих предыдущих работ.




P.S. Если кто не догадался — конкретно AES в TMTO-атаках вообще ни причём. авторы только прикинули на нём подбор железа. TMTO-атаки действуют одинаково против всех шифров (это фактически оптимизация брутфорса), даже против идеальных. Всё зависит от размера ключа и некоторых других параметров шифра. Сам алгоритм шифрования впервую очередь важен только по скорости исполнения, а все алгоритмы стараются быть примерно одинаково быстрыми.


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


Только в отношении RKA рассматриваются атаки, специфичные к AES.

— Elis (11/01/2012 01:35)   профиль/связь   <#>
комментариев: 4   документов: 0   редакций: 0
unknown, спасибо за лекцию!
интересная статья, только осталась непонятной конверсия "CPA -> KPA". Как это делается, если этой возможно? Ведь и в статье написано, что в CBC "ключ 128 бит и IV 128 бит эквивалентны 256 битам"..
— unknown (11/01/2012 12:52, исправлен 11/01/2012 17:53)   профиль/связь   <#>
комментариев: 9796   документов: 488   редакций: 5664

Вам спасибо, что обращаете внимание на принципиально важные моменты. По описанию из статьи Хонга и Саркара, атака Бирюкова (Multiple data TMTO — шифрование одного сообщения множеством ключей) действительно работает только в ECB и для преобразования пароля в хэш в Unix.


Кратко рассмотрим возможности TMTO.


Алгоритм шифрования — функция отображения двоичных данных f:{0,1}n -> {0,1}n
Если это хэш, то она односторонняя сама по себе. Если это алгоритм шифрования, то функция односторонняя для атакующего, потому что он не знает ключ. Как только он сможет инвертировать функию f, то это равноценно утверждению, что он может взламывать шифр (находить открытый текст по шифртексту и найти по просчитанным таблицам ключ, помогающий осуществлять такое преобразование).


Проведение TMTO состоит из двух этапов: оффлайновый — подготовка таблиц и онлайновый — накопление y1...yD. Затем нахождение прообраза для некоторых yi, т.е. нахождение таких i, при которых f(xi) = yi.


N = 2n — пространство поиска. P — время предвычислений. T — время онлайн-вычислений. D — количество точек данных y1...yD. M — требуемая память на хранение таблиц.


В оригинальном методе Хеллмана D = 1. TMTO-кривая имеет вид TM2 = N с характерной точкой T = M = N2/3 — настолько сократили N, но и фаза предвычислений по времени равна P = N.
Один раз сбрутфорсить N, а далее N2/3 для любого ключа. И это работает в ECB.


Бэбидж и Голиц (BG-атака) рассматривают этот метод для потоковых шифров. Дополняя метод поиска атакой на основе парадокса дней рождения они получают TM = N, T = D, P = M = N / D; характерная точка: T = M = D = P = N 1/2.


Бирюков-Шамир (BS-атака) для потоковых шифров: TM2 D2 = N2; 1 ≤ D2 ≤ T; P = N/D, типичная точка T = M = N1/2; D = N1/4; P = N3/4.
(Чудес нет, но прогресс заметен).


Для случая если f — перестановка (блочные шифры): даже для D=1 можно получить оптимизационную кривую TM = N с лучшей оптимизацией T = M = N1/2, D = 1.


Ведь и в статье написано, что в CBC "ключ 128 бит и IV 128 бит эквивалентны 256 битам"..

Совершенно верно: в случае D = 1 время предвычислений P = 2k, что нежелательно, так как это полный брутфорс при том, что P и N = 2k+v — где k — размер ключа, а v — IV, твик, соль и т.д.


Но: в общем случае P = N/D, что позволяет сократить время по сравнению с брутфорсом. Например P=23k/4 для потокового шифра 23(128+128)/4 = 2192. При T = M = N 1/2 = 2k/2 = 2128. Потоковый шифр 128-бит ключ и 128-бит IV: вместо брутфорса 2256 имеем 2192 предвычислений и 2128 на поиск. Этот сценарий недостижим вычислительно, но требует всего данных D = N1/4 = 2k/4.


Там дальше даны более точные формулы для разного соотношения размеров IV и k.


Для режима CBC N = 2(l+1)b, где b — размер вектора инициализации (и блока), l+1 — повторы сообщения m, равные размеру блока. Для кривой TM2 D2 = N 2, точка оптимума T = M = N1/2, D1/4. Но эта точка существует только при N1/2 < 2lb, т.е. 2(l+1)b/2 < 2lb, что имеет смысл только при l > 1. Т.е. при l=2 годится AES-256 и 128-битного блока, для l=1.5 — AES-192 и 128-битный блок.


Время предвычислений такое же как у потоковых — использование предвычислений 2144 для AES-192 не слишком впечатляет даже при возможности в последующем ломать 2192 за 296 операций при наличии 248 подобранных текстов.


Конвертер CPA-KPA-COA (Ciphertext Only) для CBC также использует таблицы D, покрывающие D/N.
Сообщение с известным текстом m должно быть выбрано заранее, так чтобы оно встретилось в блоке D + λ повторений. Так, если будет всего λ + 1 повторений, то можно будет запустить только оригинальный вариант TMTO (атаку Хеллмана) с D = 1. Больше повторений — более эффективный вариант атаки. Нужно лишь сдвигать D + λ по всему шифртексту в онлайновой стадии вычислений, получая много ложных ключей k, соответственно затрачивая время на их вычисление и проверку.


В итоге, режиму CBC эта атака не угрожает, свести её к атакам 2100 не получится, да и для атак на потоковые шифры неактуально. Авторы статьи из данной новости использовали узкий вариант Multikey TMTO скорее всего для непрактичного сценария (ECB, функции преобразования паролей).

— Elis (12/01/2012 22:34)   профиль/связь   <#>
комментариев: 4   документов: 0   редакций: 0
Понятно, спасибо.
(Однажды увиденное объявление о продаже rainbow-таблиц для CRAM-MD5 беспокоило моё воображение, как можно найти способ обойти "крупную соль" в TMTO. Jim Hong и Palas Sharkar его не нашли, да и те анонимные продавцы, может быть, тоже =)
— Гость (16/01/2012 23:45)   <#>
unknown, спасибо за новость, но по теме добавить ничего пока не могу.

Поправьте
ходя и с некоторым замедлением.
— unknown (17/01/2012 09:40)   профиль/связь   <#>
комментариев: 9796   документов: 488   редакций: 5664
Тот случай, где и spellchecker не помогает. Fixed.
Ваша оценка документа [показать результаты]
-3-2-1 0+1+2+3