Pull to refresh

Comments 55

«при сохранении уровня стойкости» — без пруфов это голословное утверждение, которое влечет за собой известную фразу: «никогда не изобретайте собственную криптографию».
«Пруфы» мы и пытаемся получить. Если Вы знакомы с криптографией, то должны знать, что единственный настоящий «пруф» сегодня можно озвучиь так: «Мы собрали много „головастых“ криптографов, заплатили им достаточно денег ( в университетском мире это может быть в виде грантов и конференций), чтобы они не работали на стороне, и ждем отчет с результатами криптоанализа. Если месяцев за 8-9 не понизили оценку стойкости, то можно еще лет 5 шифр использовать».
Я, мягко говоря, знаком с криптографией, и могу сказать следующее. Алгоритм шифрования представляет из себя совокупность описания блоков, обоснования выбора узлов и их параметров и первичный криптоанализ. Все что увидел в статье — голословные утверждения, представленные исключительно описанием алгоритма. При таком наборе данных ни один уважающий себя коллектив не возьмется это анализировать. Так что через 8-9 месяцев можете пользоваться на 5 лет
А мне так называемые «уважающие себя коллективы» и не интересны совсем. В таковых еще никогда не рождались новые революционные идеи ( как в науке вообще, так и в криптоанализе, в частности). Поэтому мое обращение к молодым исследователям, которым это будет интересно. Когда Диффи, Хеллман, Ривест, Шамир и Эдлеман писали свои революционные работы по криптографии они ее вообще знали слабо.
Лет 7 назад пришел в «уважающий себя коллектив» тоже с революционной идеей (суть заключалась в построении алгоритма по аналогии с Rijndael, только не матрица, а куб, соответственно операции проводились над плоскостями). Так вот, опытные криптографы советской закалки буквально за час смогли понизить стойкость на несколько порядков. С тех пор мое мнение о них изменилось.
Это приятно слышать, ибо первоначально я тоже 15 лет состоял в числе таких.
Но все же «прорывов» там практически не было. И технология проведения анализа ограниченным (пусть и очень квалифицированным) коллективом проигрывает мобилизации интеллектуальных сил через открытые конференции и конкурсы. Это показал убедительно весь опыт развития так называемой «открытой криптографии», начиная с 1969 года.
Зависящий от ключа циклический сдвиг — это как-то чересчур оптимистично, по нынешним мерками.
В аппаратной реализации или, как минимум, на процессоре без barrel shifter, циклический сдвиг на разное количество бит будет выполняться за разное время. Это — побочный канал для атаки.

Применительно к этому алгоритму, это означает что атакующий может узнать результат F, т.е. сфокусировать chosen plaintext attack непосредственно на X = F(L, L xor K) где X и L известны. Причем при известном L, пространство перебора K сразу же снижается до 2^(n-1) безо всяких дополнительных телодвижений.

Помимо этого, если поглядеть на схему раунда, то можно увидеть что при известных Li и Ri в Li+1 оказывается чистый раундовый ключ Ki, циклически сдвинутый на одно из 4х значений. Само по себе это не особо страшно, но говорит о том, что количество раундов в алгоритме желательно не менее 16.

Это не полноценный анализ, просто навскидку по написанному.

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

Можно. Только получится другой уже побочный канал, по питанию, который в свою очередь тоже нужно будет закрывать. В результате реализация начинает обрастать заморочками и требованием дополнительных ресурсов. При таком раскладе, при отсутствии каких-либо веских не-технических причин использовать именно NASH, скорее всего предпочтение будет отдано другому алгоритму.
Отправил ваш выпад молодым соавторам. Ждем ответа.
Пока суть, да дело: скажите, 2^255 — это действительно «взлом»?
«Если это так, Вы мой враг на всю жизнь.» (М. Булгаков «Собачье сердце»)
Не, с таким — это к чистым академикам :) Не взлом конечно. Но симптом возможной слабости алгоритма относительно ожидаемой стойкости.

Кстати, чуть более полное формальное описание алгоритма на eprint и особенно авторская реализация могут более ощутимо повлиять на интерес к анализу алгоритма, чем наличие криптограмм и хешей ;)
Спасибо, хорошая идея. Воспользуемся.
Точно так же как половина эллиптических кривых в ECDSA(ECDH) «одобрена» NSA (да и параметры кривых какие-то странные и ни разу никем не объяснены).
Мы не АНБ, а скорей наоборот. Если Вы спросите, что такое lancrypto из 90-х, то старшее поколение может рассказать.
Нет, посмотрите мое выступление на конференции EUROCRYPT 2016. Именно по поводу этого письма и гибели Джона Нэша в автокатастрофе, мы и назвали в его честь наш алгоритм.
Та же «сеть Фейстеля», что и в старом добром ГОСТ 28147-89. Немного «припудренная» и ослабленная. Если нет математического доказательства стойкости, то это очередная забава — «поиграться в криптографа» — в качестве дипломного проекта и для домашних поделок сойдет.
А я DES вспомнил. На беглый взгляд, относительно стойкое, но только если у вас за окном ранние 80е
Да, DES так и не был сломан. Просто устарел по причине короткого блока данных и коротких ключей. Стало возможно их тотально перебрать. Но у алгоритма NASH эти параметры несколько иные.
Да это я не для себя))) Я уже 14 лет назад защитил свой дипломный проект)
Я с Вами согласен, именно кто-то из будущих дипломников и может предложить что-либо неординарное в области анализа. Ждем-с
Первая мысль была о новом российском потреотичном алгоритме
Не очень понятна ирония в слове «потреотичном».
Я пытаюсь с 94-го года на практике доказать, что у нас есть кому разработать достойные крипто. алгоритмы (и не только в спецслужбе). Американцы и европейцы в 90-х в это не очень верили, но за последние 20 лет кое-что общими усилиями (РусКрипто, CTCrypt, SibСrypto, etc.) удалось доказать. Денег на теоретические изыскания мало, потому и «потреотичных» алгоритмов немного. Но есть, как видите. Взломать слабо?
А почему бы и нет, людей много скучающих. Криптограмму и хэш сообщения в студию, посмотрим, сдастся ли, и как быстро
«Будет вам и белка, будет и свисток.. .»
Как только будет готова криптограмма и хэш открытого текста, выставлю.
… И шифровали они 3 дня и 3 ночи, да не вышифровали
Спасибо за напоминание. Сейчас перенаправлю его соавторам алгоритма.
Обещали за выходные сделать пример.
Размер блока: 64
Размер ключа: 128
Cipher Text: 0x47, 0xA4, 0x2B, 0x4F, 0xE3, 0x59, 0x4C, 0xA2
SHA-256(Plain Text): 63895F6B8517F13C1F8EA4047A70E8887BBB1367518FC1127C3BEC8C7F4E0318

"PaSSWoRD", давайте другой пример, этот не годится.

Ключ в студию!
А то, что 8 байт по хэшу легко перебрать, это и так понятно, — мы тут другим занимаемся :)

Для ключа нужно еще примеров. Лучше пару миллионов.

Вы теорию обоснуйте про пару миллионнов, а мы Вам материал предоставим ;)
См. комментарий badptr от 13.09 13:47 ниже.
Приведен хэш открытого текста и криптограмма.
Можно вскрывать!
На выходных поразвлекаемся, благодарю)

Дело в том, что криптография — это раздел математики, а не разработки ПО, так что еще до того, как написать первую строчку кода, нужен положительный результат криптоанализа предложенного алгоритма (лучше всего в виде статьи в нормальном журнале, чтобы собрать критику со специалистов), иначе весь этот код — поделка на коленке, а использование такой "потреотичных" реализации — хуже, чем отсутствие шифрования вообще, т.к. дает ложное чувство защищенности.
Бремя доказательства лежит на авторах утверждений вроде "позволяет при сохранении уровня стойкости ограничиваться меньшим числом раундов", так что это не нам всем тут слабо взломать, а вам слабо предоставить не только алгоритм, но и результаты его анализа.

Результаты нашего внутреннего мы обязательно опубликуем по мере их правильного (в смысле математики и русского языка) оформления. Наиболее сильная команда аналитиков, которая выразила желание его анализировать — аспиранты и студенты-дипломники моего старого знакомого Serge Vaudenay (он сейчас работает в Швейцарии). Если Вы готовы составить им конкуренцию, — вперед и вверх!
Вроде я уже отвечал на этот комментарий.
CodeRush, Авторы не обязаны анализировать алгоритмы. Это вполне могут сделать и сторонние люди. Другое дело, с анализом приятнее и доверия больше, так сказать, впервое впечатление.
криптография это математика, поэтому никто всерьёз не будет рассматривать без публикации научной статьи в серьёзном журнале.
Это никак не связано с тем, то я озвучил, я написал о научной (математической) статье в известном рецензируемом научном журнале.
ага, а на EuroCrypt2016 девочки из отдела бухгалтерии рецензируют статьи
Нет, это два аспиранта кафедры ИУ8 МГТУ, А. Карондеев, А. Козлов и доцент этой же кафедры А. Н. Лебедев- официальные соавторы алгоритма.
поставили своей целью разработать легковесный алгоритм блочного шифрования, который не уступал бы по стойкости упомянутым алгоритмам АНБ, но позволял бы несколько сократить количество раундов, что делает его еще более быстрым

1) Если вы модифицируете шифр и говорите, что получилась стойкость не ниже, чем у исходного, то нужно хорошее математическое доказательство. Речь не о том, чтобы давать шифр десяткам «зубров», чтобы они его потрогали. Пусть пробуют исходный алгоритм. А вы тогда сразу сможете на это опираться.
Вообще, конечно, уже писали, но повторю. Каждый день люди придумывают десятки, а может, и сотни разных алгоритмов. Конечно же, никто не будет тратить свое время на поиск слабостей в каждом из них, если нет мотивации. Она может быть двух вариантов:
— вы объявляете хороший денежный приз;
— вы делаете алгоритм, который потенциально лучше существующих, широко распространенных, по каким-то критериям и выкладываете, например, на eprint.iacr.org.
Причем, второй еще ничего не гарантирует, но является, как минимум, обязательным условием.

2) Легковесность. Вы уверены, что она получилась? Сколько логических вентилей потребуется на реализацию? А сколько у конкурентов?

3) Скорость. Тоже не увидел. Как по сравнению, хотя бы, с ГОСТ 28147-89?

У нас по университету, когда я учился, байка ходила. Пришла девочка защищать диплом.
— Я разработала свой новый шифр.
— Он стойкий?
— Конечно!
— А с чего вы взяли?
— Ну я зашифровала сообщение. Посмотрела на него — ничего не понятно. Значит, стойкий.

Вот ваша задача теперь состоит в том, чтобы убедить общественность, на суд которой представляете алгоритм, что вы чем-то отличаетесь от этой девочки :)
Это как в том анекдоте: «Чукча — не читатель, чукча — писатель.»
Конечно, следует внимательно следить за разработками конкурентов, но Лев Толстой не комментировал романов Ф. М. Достоевского и наоборот. Это пусть делают критики.
Лев Толстой не комментировал романов Ф. М. Достоевского и наоборот.

… зато как Вагнер отзывался о других композиторах — и наоборот.


Это, как всегда, к тому, что аналогии врут.

Но и Вагнер и «другие композиторы» в истории музыке остались.
За нами тоже кое-что есть, например, математические результаты, на основе которых сделан национальный стандарт на электронную подпись Республики Беларусь 1999 года.
Кстати, алгоритм у них получился весьма неплохой.

Почему в статье нет ни слова про ChaCha / Salsa? Они прямо сейчас становятся промышленным стандартом и не имеют отношения к АНБ. Вы же изучали предметную область перед началом разработки, значит NASH должен иметь какие-то преимущества по сравнению с ними?

Sign up to leave a comment.

Articles