Объявление

#26 13-01-2008 21:37:09

Re: как протетестировать крипто-алгоритм?

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


Прикреплённые файлы:
Attachment Icon Random.txt, Размер: 5,847 b, Скачано: 1,564

 

#27 13-01-2008 23:28:16

Re: как протетестировать крипто-алгоритм?

z_x_spectrum Da konechno. On lomayetsa ne zavisimo ot kolichestva krugov.


Marcos el Ruptor
http://www.EnRUPT.com/ – Raising the bar.

 

#28 14-01-2008 12:22:38

Re: как протетестировать крипто-алгоритм?

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

How secure is TEA?

Very. There have been no known successful cryptanalyses of TEA. It's believed to be as secure as the IDEA algorithm, designed by Massey and Xuejia Lai. It uses the same mixed algebraic groups technique as IDEA, but it's very much simpler, hence faster. Also it's public domain, whereas IDEA is patented by Ascom-Tech AG in Switzerland. IBM's Don Coppersmith and Massey independently showed that mixing operations from orthogonal algebraic groups performs the diffusion and confusion functions that a traditional block cipher would implement with P- and S-boxes. As a simple plug-in encryption routine, it's great. The code is lightweight and portable enough to be used just about anywhere. It even makes a great random number generator for Monte Carlo simulations and the like. The minor weaknesses identified by David Wagner at Berkeley are unlikely to have any impact in the real world, and you can always implement the new variant TEA which addresses them. If you want a low-overhead end-to-end cipher (for real-time data, for example), then TEA fits the bill.

Кстате, что-то я раньше никогда не слышал про EnRUPT...


Когда нельзя еще больше хочется...

 

#29 14-01-2008 14:12:24

Re: как протетестировать крипто-алгоритм?

drmist

Кстате, что-то я раньше никогда не слышал про EnRUPT...

что и неудивительно:

zhdite kogda on budet opublikovan cherez mesiats

)))


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

 

#30 14-01-2008 15:30:43

Re: как протетестировать крипто-алгоритм?

Ruptor
ГОСТ начали тестировать?


время ничего не меняет.

 

#31 15-01-2008 00:32:25

Re: как протетестировать крипто-алгоритм?

drmist Hotia bi na Wikipedia sperva pochitai...

t00x Nachal bilo, no prishlos otlozhit iz-za srochnih del: nado bilo zakonchit EnRUPT, potom Skype protocol reversing, vot seichas BestCrypt plugin delayu polezniy s EnRUPT-512, s zamedlennim hashem parolei s solyu, horoshim bistrim RNG chtobi po klavisham davit ne nuzhno bilo, kliuchami na USB sticks i t.d... A GOST skoro dotestiruyu, ya obeschayu.

drmist Ne slishal, no skoro uslishish. Yesli tebe nravitsa TEA, to EnRUPT gorazdo prosche, krepche i bistreye. I duratskih constant tam net, kornei nikakih ne nado zapominat... ;)))

drmist PS: a IDEA s kotoroi sravnivayetsa TEA na toi stranitse yeschio huzhe togo TEA - moi testi IDEA celikom lomayut dlia bolshinstva kliuchei, chto voobsche nepriyemlemo dlia shifra i v prirode vstrechayetsa ochen redko. Ochen ne rekomenduyu polzovatsa IDEA.


Marcos el Ruptor
http://www.EnRUPT.com/ – Raising the bar.

 

#32 15-01-2008 01:20:07

Re: как протетестировать крипто-алгоритм?

Ruptor
Можно ссылку на криптоанализ IDEA? Вроде бы его до сих пор считают надежным (исключая наличие класса слабых ключей).

 

#33 15-01-2008 01:35:42

Re: как протетестировать крипто-алгоритм?

ntldr - http://defectoscopy.com/results.html

Na bolshe podrobnostei u menia prosto net vremeni k sozhaleniyu. IDEA-NXT kstati ochen tviordiy, dazhe perebor. Dostatochno 8 krugov iz 16. A "klassa" slabih kliuchei - eto dlia IDEA znachit ogromnogo klassa kliuchei. Minimalnaya slabost takih kluchei - trivialno (v rayone 2^16) lomayetsa gorazdo bolshe krugov, chem ves shifr. Maximalnaya - lomayetsa voobsche dlia liubogo kolichestva krugov. On slishkom chuvstvitelen k otsutstviyu starshih bitov v liubom slove kliucha. Imenno po-etomu ya yego i ne rekomenduyu. Zamuchayeshsa sgenerirovanniye kliuchi na stoikost proveriat.

PS: A yesli protocol pozvoliayet kliuchi meniat cherez IV, togda voobsche truba. Klassi slabih kliuchei => garantirovanniy slom cherez related-key attacks.

Отредактировано Ruptor (15-01-2008 01:39:05)


Marcos el Ruptor
http://www.EnRUPT.com/ – Raising the bar.

 

#34 15-01-2008 05:45:33

Re: как протетестировать крипто-алгоритм?

ntldr - http://defectoscopy.com/results.html

Это все хорошо, но вы бы порадовали сообщество чем-нибудь повесомее красивых табличек и графиков. Хотелось бы почитать про конкретные методики такого тестирования и пощупать исходники.

 

#35 16-01-2008 05:36:18

Re: как протетестировать крипто-алгоритм?

Хотелось бы почитать про конкретные методики такого тестирования и пощупать исходники.

Etogo vsem bi hotelos. Hotia namioki na nekotoriye podrobnosti uzhe proskalzivali v pechati - posmotri bumagi opublikovanniye v nedavnem polskom workshope Tools for Cryptanalysis 2007 yesli tebe eto tak uzh interesno. Hotia tam vazhnih podrobnostei net pro slide attacks i pro guess-and-determine attacks, tolko opisan moi metod vosstanovleniya ANF funkciy i testirovaniya ih raspredeleniya na sluchainost. Da, Thomas Johansson et. al. kotoriye publikovali bumagu priamo pered moyei, deistvitelno ukrali chast moyei raboti i vidali yeyo za svoyu. Plagiarizm v cryptography okazalos normalnoye delo... A za ne imeniyem vremeni uchit soobschestvo, ya budu prosto prodolzhat testirovat shifri na vshivost i publikovat moi rezultati. Mozhet kogda-nibud biblioteku vilozhu poleznuyu, no sources - eto vriadli.


Marcos el Ruptor
http://www.EnRUPT.com/ – Raising the bar.

 

#36 16-01-2008 09:59:03

Re: как протетестировать крипто-алгоритм?

Ruptor
Я конечно далеко не спец в криптографии, но подобные заявления уж слишком смелые. Чую, в одном из след. постов будет написано, что Rijndael не надежнее обычного xor, а RSA - вообще утопия.

Может, все-таки сделать проверку подобных заявлений? В зале есть гуру криптографии?


Мнение автора может не совпадать с его точкой зрения,
потому что в действительности всё не так, как на самом деле.

 

#37 16-01-2008 13:39:23

Re: как протетестировать крипто-алгоритм?

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

Отредактировано ftre (16-01-2008 13:40:07)

 

#38 16-01-2008 16:23:24

Re: как протетестировать крипто-алгоритм?

Ruptor
Поскольку методики анализа не могут быть проверены независимо, то и "результатам" цена - ноль.

Отредактировано CreatorCray (16-01-2008 16:24:07)

 

#39 16-01-2008 18:31:00

Re: как протетестировать крипто-алгоритм?

Ruptor
При всем уважении, звучит не убедительно.


Когда нельзя еще больше хочется...

 

#40 16-01-2008 21:53:33

Re: как протетестировать крипто-алгоритм?

offtop.

В зале есть гуру криптографии?

Есть. И именно его слова ты подвергаешь сомнению, признавая, причем, собственную некомпетентность.

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

 

#41 16-01-2008 23:11:13

Re: как протетестировать крипто-алгоритм?

Я, в целом, согласен с Noble Ghost'ом. Ruptor — весьма авторитетный персонаж в области криптографии и математики, и не раз доказывал свой высочайший уровень.

Но в последнее время просматривается грустная тенденция — много громких заявлений и ноль реальных выкладок. На все вопросы — отсыл к дефектоскопу. Сказать "Я умею ломать TEA с любым кол-вом раундов, но мне некогда рассказать вам как именно" — это самый верный способ дискредитировать себя, особенно на ВАСМе :). Поэтому реакция MSoft, ftre, CreatorCray, иdrmist вполне предсказуема.

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

 

#42 17-01-2008 06:36:59

Re: как протетестировать крипто-алгоритм?

Цифровая криптология - это не физика и не химия и даже не математика. Тут тысячелетних наработок нет. Она существует с 1975 года с появления DES. До этого всё было засекречено и NIST вынуждены были два раза подавать запрос на DES стандарт. На их первый запрос не было подано ни одного алгоритма!! К чему я это? А к тому, что криптографии никто не знает вообще.

Так что, MSoft, sorry, но гуру в криптографии нет в принципе, есть только толпа новичков, которые делятса на три группы:

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

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

3. Крипто-мафия. Те, кто в криптологии тоже ничего не знают, но при этом считают себя крупными специалистами - это в основном академики, подавляющее их большинство. Ездят по конференциям, смотрят кто чем занимается, ломают друг другу шифры либо прямым обманом (не важно что атака требует 2^253 памяти и 2^247 процессоров или 2^247 времени - им наплевать на правду, главное что очередной 256-битовый шифр можно оклеймить как *сломанный*, хотя 2^128 параллельных крохотных бруте-форсеров сломали бы его за 2^128 времени - этим занимается в основном группа евреев в лице Ора Данкельмана, Эли Бихама и их друзей, под всеобщие аплодисменты с открытыми ртами), либо старыми, хорошо изученными открытыми группой №2 методами типа линейного и дифференциального криптанализа, стараясь либо украсть новые результаты группы №2, либо задавить их авторитетом... Но каждые несколько лет кто-то из группы №2 всё-таки умудряется протиснуться с новой атакой, которая всем доказывает что все эти мафиози на самом деле и себя и других всё это время обманывали. Хотя их это ни капельки не смущает. Они адаптируются к новой атаке и продолжают пускать народу пыль в глаза.

К группе №2 относится например один из моих друзей, всем известный Никола Куртуа - "прародитель" алгебраических атак. Ему даже как известному академику очень трудно публиковать свои работы из-за гигантского сопротивления мафии, хотя его результаты очень конкретные. А большинство тех кто к ней относится - это "quiet achievers", которые просто тихонько делают своё дело, в основном в спец-службах. Им новые результаты гораздо важнее, чем всеобщее признание.

Моё же любимое направление в криптологии - это найти методы создания реальных шифров, про которые можно бы было и на практике и по теории доказать что они не ломаются, никакими атаками в принципе. Это очень не просто, но это реально. Надо только сперва вылезти за пределы линейного и дифференциального криптанализа. Луби & Ракофф ещё в 1988 году опубликовали первую фундаментальную теоретическую работу на эту тему (им два года потребовалось - они ещё в 1986 году подавали, но их бумагу мафия не пустила), а теперь Жак Патаран это проталкивает дальше, хотя и с не меньшим трудом. Я попросил его опубликовать доказательство для более практического варианта, где p кругов, которые меняют какую-то часть из w битов от всего блока на каждом круге, ещё отличается от случайного в полиномиальное время, а p+1 кругов - уже нет. Если будет такое доказательство, то сложив его с такими тестами как мои, можно доказывать безопасность или небезопасность почти любого шифра и ломать его этими же инструментами, только слегка расширенными. Но эту идею как и любую новую идею в криптологии очень трудно протолкнуть.

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

Если тут кто-то понимает что такое ANF, то вы спокойно можете воспроизвести все мои результаты если вам не лень. И не надо бросатьса помидорами. Это очень просто. Прочитайте эту и эту бумаги и всё должно стать совершенно ясно. Время - деньги, а мне публикация денег не сделает, и так только море времени отнимает без толку. Так что если вы не понимаете что там тестируется и как, тогда просто плюньте на мой web site и не ходите даже туда. Я никого не заставляю ценить мою работу. Сомневайтесь на здоровье.

А если кто-то хочет меня проверить на вшивость, то ради бога! Именно этот метод я и предлагаю на defectoscopy.com как самый честный - пошлите мне ваш заведомо слабый или слишком твёрдый шифр без указания сколько ему нужно кругов для криптостойкости, какой-то шифр который вы сами можете как-то по-хитрому сломать. Я вам отвечу какое минимальное количество кругов ему необходимо и к каким атакам он будет уязвим, хотя в принципе мне и так это приходится делать периодически, но не публично. Блочный, поточный, хаш - всё равно. И мне не понадобятся для этого многие месяцы. Я могу найти все дырки за пару часов или максимум за пару дней если исходник будет слишком сложный. Есть желающие проверить мои методы всем на убеждение? Или я только flamers и троллей разбудил случайно? Я не хотел.

PS: По просьбам общественности переведено на кириллицу.

Отредактировано Ruptor (18-01-2008 13:15:15)


Marcos el Ruptor
http://www.EnRUPT.com/ – Raising the bar.

 

#43 17-01-2008 06:49:17

Re: как протетестировать крипто-алгоритм?

Hochu napomnit osobo aggressivnim trollam, chto topic etogo thread - "kak protestirovat crypto-algoritm", a ne "kak slomat TEA". Na Wikipedia napisano kak lomat TEA.


Marcos el Ruptor
http://www.EnRUPT.com/ – Raising the bar.

 

#44 17-01-2008 11:21:28

Re: как протетестировать крипто-алгоритм?

Ruptor
Просьба: Я все понимаю, но читать в транслите несколько напряжно, поэтому просьба попробовать использовать транслитераторы. К примеру этот: http://www.translit.ru  Текст получается несколько корявый, но все равно читать проще.

 

#45 17-01-2008 16:54:32

Re: как протетестировать крипто-алгоритм?

-

Отредактировано z_x_spectrum (22-07-2008 06:39:27)

 

#46 18-01-2008 02:15:00

Re: как протетестировать крипто-алгоритм?

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


Кто из нас ровесники, кто герой, кто чмо
Капитан Колесников пишет нам письмо  (С)ДДТ

 

#47 19-01-2008 13:24:46

Re: как протетестировать крипто-алгоритм?

Фигасебе. Тогда не буду юзать TEA =), но у XTEA стойкость упадет если я вместо 32 использую 16 раундов? Просто скорость шифра тоже важна. И еще подожду EnRupt =) Ах да, поскольку сам господин Ruptor заинтересовался моей скромной затеей, то позволю себе спросить кое что :-) Вообще подобный "шифр", что я хотел поначалу поюзать (первые посты) - имеет смысл, если в качестве датчика ГПСЧ поюзать этот же Xorshift или другой хороший генератор с большим периодом последовательности? Чисто ради интереса. Я нуб =)

Вот еще что бы хотелось раз и навсегда прояснить, а то везде по разному пишут.

TEA - был самый первый из этой серии (как я уже понял его фтопку)
XTEA (он же TEAN?) - вроде получше =) (выражаясь языком нубов)
Block TEA - что за шифр?
XXTEA (модификация Block TEA?) - аналогично с Block TEA

Какой из серии *TEA* наиболее актуален? Есть доки от создателя (Дэвид Вагнер кажется) с схемами алгосов, но я нихрена в них не понимаю =) Точнее на асм переведу, но что из этого "ЧАЯ" лучше хз =)

Отредактировано BaGiE (19-01-2008 13:35:22)

 

#48 19-01-2008 14:44:41

Re: как протетестировать крипто-алгоритм?

Используйте Rinjdael и будьте спокойны. Если интересно могу дать две свои реализации, одна оптимизирована на скорость, вторая на размер.
Если EnRupt будет принят и проанализирован сообществом, то лет через 5 можно будет начать его использовать. Раньше я бы опасался, ввиду того что сильно много сломано шифров авторы которых (причем имеющие авторитет) заявляли об их крутости и неломаемости.

P.S. это мое личное консервативное мнение, и попрошу не начинать на меня наезжать.

Отредактировано ntldr (19-01-2008 14:46:24)

 

#49 19-01-2008 14:58:39

Re: как протетестировать крипто-алгоритм?

XTEA - это исправленный TEA. В нем дырок нет никаких.

Block TEA - это была их первая детская попытка расширить его до блоков любого размера. Пользоваться им нельзя. Они не подумали что расшифровка при соединении текущего слова только с "предыдущим" не имеет никакой криптостойкости. Мои тесты это моментально выявляют. Saarinen это дело сломал сразу же.

Они его исправили - прибавили "следующее" слово и получился XXTEA. В нем тоже дыр нет кроме одного маленького недостатка - для блоков большого размера (которые только 6 полными циклами шифруются) можно найти частичные коллизии за 2^32 операций у кого есть 2^32 процессоров и 2^32 разделенной между ними памяти. Пока трудно сказать что это дает нападающему. Скорее всего ничего. Хотя есть очень маленький шанс, что такая частичная коллизия поможет как-то ускорить слом, возможно какую-то хитрую алгебраическую атаку. Каждый полный цикл вокруг блока добавляет только 2^16 к стойкости от этой атаки, не зависимо от качества самой функции. Это моя собственная атака, хотя это трудно назвать атакой. Она только находит два частично совпадающих зашифрованных блока.

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

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

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

TEA - 20 кругов
XTEA - 18 кругов
XXTEA - 4*xw+12 кругов [xw - это количество 32-битовых слов в блоке]

2. Для защиты от активных атак (например линейный и дифференциальный криптанализ) где атакующий может предоставить заранее подготовленный выбранный им набор данных, а потом будет долго и пристально его изучать, но контроля над ключом через IV не имеет и не может подбирать вход в зависимости от выхода:

TEA - 30 кругов
XTEA - 27 кругов
XXTEA - 6*xw+18 кругов [столько же, сколько и TEA для 64-бит блоков]

3. Для защиты от адаптирующихся атак, но где атакующий опять же не может никак повлиять на ключ и не знает о нем ничего:

TEA - 40 кругов
XTEA - 36 кругов
XXTEA - 8*xw+24 кругов

4. Для использования как хаш или где атакующий может влиять на ключ через IV или через протокол обмена ключами, то-есть в самых жестких условиях:

TEA - ломается сколько его ни крути
XTEA - 76 кругов
XXTEA - 8*xw+68 кругов [да, XXTEA слегка слабее чем XTEA когда битами ключа можно манипулировать], а для полной защиты от частичных коллизий в безразмерно больших блоках (xw>16) - не меньше 16*xw кругов.

Это цифры для теоретической криптостойкости. На практике немного меньшее количество кругов выживет. Выбирайте сами. TEA конечно из них самый простой, XXTEA - самый сложный. Я картинки всех троих добавил в доку по EnRUPT чтобы люди могли сравнить и разобраться. Еще рекомендую сдвиги в них поменять с 4-5 на 6-8. Тогда они немного крепче и надо немного меньше кругов - 1) на 2, 2) на 3, 3) на 4 и 4) на 4 круга меньше для каждой из этих 4 групп. Тогда я бы наверное спокойно спал с 18 кругами TEA для минимальной защиты, хотя у меня теперь есть EnRUPT, который гораздо проще и гораздо быстрее и дырок TEA в нем нет. Ему то для этого уровня защиты 16 кругов точно хватит.

А насчет AES... Я не один кто считает что Rijndael надо 20 кругов для криптостойкости. Некоторые из верхушки криптаналитиков со мной в точности с этим согласны. Но опубликованных рабочих атак пока нет, поэтому я предпочитаю об этом молчать и просто рекомендую Twofish.

Хотя для общего случая конечно нельзя программистам позволять пользоваться урезанными шифрами. Они постоянно добавляют новые features и потом вдруг дыра в системе потому что забыли про то что урезанным шифром уже нельзя пользоваться, а замедлять его тоже уже нельзя - пользователи обидятся. Так что лучше уж сразу выбрать стойкий шифр и никого потом не бояться.

PS: Приведенное количество кругов - это значит отдельных кругов, не полных циклов. Так в TEA и XTEA обычно 64 круга.

Отредактировано Ruptor (19-01-2008 15:28:09)


Marcos el Ruptor
http://www.EnRUPT.com/ – Raising the bar.

 

#50 19-01-2008 15:10:17

Re: как протетестировать крипто-алгоритм?

ntldr чего на тебя наезжать? Ты совершенно прав. Хотя в индустрии и в академическом мире принят срок в 4 года - если за 4 года хорошо известный шифр не смогли сломать, то ему начинают доверять. Я и сам буду трястись первый год - мало ли... Все-таки паранойя, привык уже. Я же столько разных вариантов перебрал за последний год чуть ли не круглосуточно... и каждый раз в них новую дыру находил, либо для определенного размера, либо для какого-то из режимов работы. Вплоть до полного разочарования. А этот вот уже три месяца как ни смотрю, все в порядке. Если не сломают, то все, ухожу на пенсию программы писать полезные с тобой за одно.


Marcos el Ruptor
http://www.EnRUPT.com/ – Raising the bar.

 

Board footer

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson