id: Гость   вход   регистрация
текущее время 09:47 20/04/2024
Владелец: unknown (создано 15/11/2006 10:47), редакция от 15/11/2006 14:10 (автор: SATtva) Печать
Категории: криптография, криптоанализ, алгоритмы, симметричное шифрование, атаки
https://www.pgpru.com/Новости/2006/11-15-ОсуществленаПерваяАлгебраическаяАтакаНаDES
создать
просмотр
редакции
ссылки

15.11 // Крипто // Осуществлена первая алгебраическая атака на DES


Сенсационный результат был представлен в работе Николя Куртуа и Грегори Барта "Алгебраический криптоанализ стандарта шифрования данных". Им удалось впервые осуществить алгебраическую атаку на блочный шифр, не созданный на основе алгебраических преобразований и считающийся не имеющим алгебраической структуры.


Использовалось свойство небольших размеров S-блоков DES, что позволило создать систему уравнений относительно компактного размера: 2900 переменных, 3056 уравнений и 4331 одночленов. (Напомним, что ближайший аналог DES — российский шифр ГОСТ — имеет ещё более простую структуру. Малые размеры S-блоков используются также в шифре Serpent.)


И хотя атака непрактична — осуществима только против 6 раундов DES на PC, — тем не менее, для её проведения требуется всего одна пара открытого текста (что является безпрецендентным успехом по сравнению с дифференциальным и линейным криптоанализом) и всего несколько секунд времени (полный взлом DES также возможен, но авторы не приводят оценки затрат ресурсов). Атака возможна против DES с любым модифицированным набором S-блоков такого же размера, кроме того, это всего лишь первая алгебраическая атака против шифра без "алгебраической" раундововой функции, что является важным доказательством универсальности этого метода.


AES пока более устойчив к "шестираундовой атаке", так как он описывается системой уравнений с количеством одночленов, равным 27400.


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


Источник: http://eprint.iacr.org/2006/402


 
На страницу: 1, 2 След.
Комментарии [скрыть комментарии/форму]
— unknown (30/01/2007 09:26)   профиль/связь   <#>
комментариев: 9796   документов: 488   редакций: 5664
Ну, имхо в начальной стадии развития находятся только публичные материалы о алгебраическом анализе. Имхо все серьезные (и имеющие практическое значение) работы на эту тему будут обязательно засекречены.

Ну попытки вставлять палки в колёса свободному развитию науки со стороны некоторых государственных структур были всегда и везде. Только долго эти секреты не удерживаются. Во всех странах над этим работают. Не в одной, так в другой стране опубликуют. И добьются за счёт этого бОльших успехов, чем там где затормозили прогресс из соображений секретности, национальной безопасности и прочих мифов, за счёт которых существует гос. бюрократия.
— SATtva (30/01/2007 09:33)   профиль/связь   <#>
комментариев: 11558   документов: 1036   редакций: 4118
Имхо в следующей версии TrueCrypt хотелось бы видеть возможность создания цепочки из всех шифров, какие там присутствуют.

Существует и проблема чисто практическая. До проведения тестового расшифрования сам TrueCrypt не знает, каким шифром или каскадом зашифрован раздел. Если сделать возможность полностью произвольного комбинирования шифров в каскады, это будет приводить к очень значительным задержкам при открытии крипторазделов (особенно на не очень производительных системах), поскольку программа должна будет перебрать все возможные комбинации алгоритмов, пока не найдёт верную. Причём всё это придётся терпеть и при неверно введённом пароле. А если несколько раз допустить опечатку?.. К тому же не любые шифры объединяются в каскад достаточно безопасно.
— serzh (30/01/2007 10:54)   профиль/связь   <#>
комментариев: 232   документов: 17   редакций: 99
Существует и проблема чисто практическая. До проведения тестового расшифрования сам TrueCrypt не знает, каким шифром или каскадом зашифрован раздел. Если сделать возможность полностью произвольного комбинирования шифров в каскады, это будет приводить к очень значительным задержкам при открытии крипторазделов (особенно на не очень производительных системах), поскольку программа должна будет перебрать все возможные комбинации алгоритмов, пока не найдёт верную. Причём всё это придётся терпеть и при неверно введённом пароле. А если несколько раз допустить опечатку?..

Эту проблему не так сложно решить. Например можно сделать в окне ввода пароля три опции:
  1. использовать стандартный каскад (стандартных каскадов может быть несколько).
  2. использовать следующий каскад (выбирается последовательность используемых алгоритмов)
  3. перебирать все возможные варианты (случай описаный вами, также полезен, если забыта последовательность для второго варианта)
Каждый выбирает сам, что лучше подойдёт для его ситуации.

К тому же не любые шифры объединяются в каскад достаточно безопасно.

Это можно написать в справке или выдавать предупреждение при соответствующем выборе.
— SATtva (30/01/2007 13:56)   профиль/связь   <#>
комментариев: 11558   документов: 1036   редакций: 4118
Логично. Но я могу понять и логику разработчиков, стремящихся сделать дизайн по возможности fool-proof (с защитой от дурака). Это как с Tor'ом, где уже очень давно длина цепочек жёстко зашита в коде, вместо указания её через параметр конфигурации.
— unknown (30/01/2007 15:47)   профиль/связь   <#>
комментариев: 9796   документов: 488   редакций: 5664
А я думаю, что логику предложений serzh и SATtva можно объединить в один алгоритм:

Пусть множество всех возможных шифров описывается числом 2n. Для неиспользуемых шифров будут задействованы пустые значения.

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

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

Тогда проделать работу по перебору всех вариантов придётся только один раз. Обратное вычисление функции каскада по значению пароля и соли при открытии раздела будет происходить быстро.
— unknown (31/01/2007 11:28)   профиль/связь   <#>
комментариев: 9796   документов: 488   редакций: 5664
Кстати, работы по развитию алгебраического криптоанализа идут очень интенсивно. К ним подключено большое количество учёных и разработчиков из разных стран, вероятность того, что какие-то секретные исследования в этой области продвинулись намного дальше невысока.
— Гость (31/01/2007 13:04)   <#>
длина цепочек жёстко зашита в коде

В Tor control protocol (пункт 3.10) есть команда EXTENDCIRCUIT, позволяющая построить цепочку любой длины.
— SATtva (31/01/2007 15:26)   профиль/связь   <#>
комментариев: 11558   документов: 1036   редакций: 4118
Ну да, а много ли простых смертных знает, как посылать управляющие команды на порт контроллера? В основном управляющий протокол предназначен для интеграции с другими приложениями (в том числе и GUI), а не для просто пользовательского применения.
— Гость (31/01/2007 17:47)   <#>
много ли простых смертных знает

Тут уже нужна "теория сложности" смертных... :)
На страницу: 1, 2 След.
Ваша оценка документа [показать результаты]
-3-2-1 0+1+2+3