[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Пуд соли
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
twin
Цитата (MiksIr @ 23.07.2013 - 14:45)
> А если опять пуститесь в пространные рассуждения, я их расценю как чистой воды демагогию.

А что же вы стыдливо не привели вызов вашей функции со значением $logic ?
Его уже украли и давно щелкают пароли, а вы все еще надуваете щеки wink.gif))

Я с вами не спорю уже, если не поняли - смысла нет. Вы приняли стандартную позицию "ничего не слышу". Меня не интересует ваш $logic, ибо как только будет получен доступ к вашему реальному коду, будут слиты реальные пароли, будет получен ваш алгоритм - вы будете в луже. А я со стандартным crypt и открытой солью - нет. Ибо никто не сможет построить радужных таблиц из-за длины пароля, а подбор будет болезненный, ибо там на каждый хеш у меня миллионы итераций тяжелых криптографических функций. Открытых.

> Вы вообще в курсе, как она устроена, crypt()?
Ага. И с удовольствием рассказываю об этом людям.

Что и требовалось доказать. Если бы, да кабы.
Я для чего пример брута привел? Где гарантии, что через пару лет ваша crypt() не будет щелкнута как орех, что для неё не будет тех же радужных таблиц? Я не зря привел выдержку из вашего же пруфа:
Цитата
В 2012 году Poul-Henning Kamp призвал полностью отказаться от созданного им алгоритма, как не обеспечивающего в современных условиях ощутимого увеличения времени вычисления хеша, а значит, и не защищающего от полного перебора
До 2012 года тоже так же рассуждали, мол никто не сможет, мол миллионы итераций... А вона как повернулось.

А у меня тоже самое по сути, только еще одна препонка есть. Да, да, тот самый $logic, до которого еще добраться нужно. Если есть доступ в БД, то ваш все данные в руках жулика. Но у него нет доступа к PHP. И значит нет значения $logic. И ему не помогут ни радужные таблицы, ни сумашедшее быстродействие, ни вообще ничего. Только доступ в конфигу.

Так что демагогия это, самая настоящая. Вы пытаетесь убедить меня, что два замка хуже одного. Ну ведь глупо.

Что касается миллиона итераций, еще раз спрошу. В чем моя функция в этом плане принципиально хуже штатной crypt()?

Да можете не отвечать, я понимаю, что конкретного ответа нет. Одна демагогия.

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

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
twin
Цитата (MiksIr @ 23.07.2013 - 15:00)
Это опыт многих людей, работающих с junior-ами. Это опыт профессионалов, которые хоть раз допустили такую ошибку, а потом ловили этот баг. Для вас он ничего не значит. Для меня - значит, что у человека такого опыта нет. Особо когда появляется "foreach() if () ..;"

Я открою небольшой секрет. Есть еще и другие люди. И другой опыт. И если вы там где-то обожглись на молоке, не нужно расстреливать инакомыслящих. Еще раз повторю:
эта ошибка может возникнуть только тогда, когда используется стиль K&R. У меня даже сомнения не возникает, что там один оператор.

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

Вы немножко спуститесь с Олимпа то, с чего вы решили, что боги пишут в "рациональном" стиле? Что всех под одну гребенку то? И меня же упрекаете, что
Цитата
Вы приняли стандартную позицию "ничего не слышу"
Я то слышу, и согласен с вашим стилем. Нравится - ваше право. Почему меня расстрелять?

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

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
twin
Божеш мой. Я уже не знаю что и говорить. Уперся человек в миллион итераций. И думает, что иначе все плохо.
Цитата
Это приятно, что вы все же узнали что-то новое. Понятно, что защищая свою репутацию вы сразу придумали "о, я же могу создать logic длинной в миллион символов".

Я даже в статье написал:
Цитата
Но однако не стоит увлекаться и задавать очень длинные алгоритмы. Это на самом деле не так сильно повышает криптостойкость, но довольно ощутимо потребляет ресурс.
Фишка функции вовсе не в миллионах итераций, а в том, что неизвестен алгоритм хэширования. Какой же идиот будет писать миллион...

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

А что уже говорить о такой соли, которая в статье для примера: ds$e2(dx#s

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

А получить пароль qwerty или 111111 с любой солью можно раз пукнув и из crypt(), даже не дожидаясь мощностей. Так какая разница?

Я спросил про принципиальное различие, не про устройство. Какая разница, сколько там итераций. Принципиальное, значит технически возможный взлом хэша. Ну или невозможность этого взлома. Так вот, подумайте, прежде чем отвечать.

Какая разница, сколько там итераций, если и то и другое выдают на гора одинаковостойкие (на сегодняшний день) хэши?

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

Да, я понимаю, ваш замок блестит и сверкает, он разрекламирован как непробиваемый и невскрываемый. Не спорю.

Но зачем спорить со мной, что мой замок хуже? И уж тем более зачем спорить, что два замка хуже чем один?

Я просто теряюсь в догадках. Как можно так забить голову всякими википедиями, что не видеть простого...

Код привести в пример?

А в чем различие? Могу так же точно написать.

return criptPassword(
$password,
CRYPT_LOGIC_ALGORITHM,
$this->generateSalt(CRYPT_SALT_LENGTH)
);


Я не улавливаю принципиального различия.

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

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
twin
Цитата (MiksIr @ 23.07.2013 - 16:18)
Какая ошибка то? wink.gif)
Я вообще об этом

а еще бывает так


Воу, воу, воу! Не нужно на меня свешивать всех собак. У меня так не бывает. И быть не может, ибо это тоже регламентировано стилем. Ну разве что первый вариант, и то я с удивлением только сейчас увидел. Ни у кого в здравом уме не возникнет желание сделать так. Остальное притянуто за уши.

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

А ссылку, таки да, оставьте. Место не пролежит. Только что с того, все равно это не стандарт, ибо стандартов на сегодняшний день нет. К тому же она не открылась.



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

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
Rand
Цитата (twin @ 23.07.2013 - 20:35)
Вот вам хэш 38dc61c882f683650899c64378e868bf
Вот вам соль: abc

Пароль: 237 laugh.gif
twin
Цитата (MiksIr @ 23.07.2013 - 17:09)
Прикинул. 8-значный пароль со всеми символами (прописными, заглавными, цифрами, спецсимволами) на ферме из десятка машин с топовыми, но бытовыми GPU вскроется... ну за пол года. Хотя точно не скажу, у меня данные по довольно старым видюхам - может нынче быстрее. И оценка велась по gost - он самый медленный, на порядок-два, чем остальные.


А теперь прибавим еще пару итераций. Просто две. Или четыре для ровного счета. Если уж ресурс настолько привлекателен, что у кого-то возникнет желание гонять десяток машин полгода, дабы вскрыть один единственный пароль. Сколько потребуется теперь?

Цитата
С учетом того, что у вас единая соль для всех, и она известна, ибо ее сперли вместе с базой и всем вашим кодом, то мы не подбираем каждый хеш, а строим радужные таблицы. Итог - после долгово построения радужных по вашему "хитрому" алгоритму, далее все хеши идут "влет".
Кто это сказал? Я еще раз повторяю, внимательно смотрим функцию. Соль туда передается аргументом. И это неспроста. Есть желание или совсем страшно, да ради Бога, делаем соль индивидуальной. Радужные идут лесом, хотя они и так будут применяться при таком раскладе только в очень теоретическом сне. Ну да, согласен, будем оперировать такими ресурсами, как "пентагон", пусть куча хакеров со всех сторон норовят поиметь нашу базу. Уговорили. Пусть соль будет индивидуальной. С радужными таблицами решен вопрос?

Цитата
Далее, за всеми этими теориями вы забыли самое главное. Я даже пытаться не буду намекать, расскажу как есть wink.gif Вы защищаете не свой пароль - кому он нужен, у вас уже все украли. Вы защищаете пароли своих пользователей. Нужно объяснять, зачем? Они, конечно, не 11111. Но и не hnwG*^&*&(4KUGHd4ch. В 95% случаев это будут словарные пароли. Ну, т.е. 95% паролей пользователей уйдут максимум за месяц. Да нет, меньше... у вас же соль одна на всех.
Упс! А не я ли написал это:
Цитата
А получить пароль qwerty или 111111 с любой солью можно раз пукнув и из crypt(), даже не дожидаясь мощностей.
Или crypt() не подвержена словарю?
Да, понимаю. Итерации. Микросекунды. Я одного понять не могу, неужели вы реально так заморочены, что считаете полгода (а с 10-ю итерациями гораздо больше) или три года - это принципиально? Есть порог рентабельности. Если база юзеров настолько ценна, что полгода на один пароль - не срок, то тогда о чем мы говорим. Да и вообще, на сколь-нибудь значимых ресурсах (не вконтактики и бложики имеется ввиду) совершенно другие принципы авторизации. С СМС-ками допустим. Кому эти пароли нахрен нужны, чтобы тратить столько ресурсов?

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

Я еще раз говорю. Есть порог разумного. Это примерно как с двигателем на машину. Можно теоретически поставить движок, который разгонит её до 700 км/ч. Но что с этого толку?

Цитата
Речь идет о том, что вы дали две критически неверных предпосылки. И учите им людей.

Теоретически неверные. Теоретически. Я давно уже понял, что вы - чистой воды теоретик. Начиная с обилия пруфов и отсутствием логических обоснований, заканчивая этими выкладками:

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

Цитата
Второе, что вы не понимаете, это про соль. Если вы плохо прочитали вики, а писал я ее как раз для таких, как вы, соль - это защита от радужных.
Опа! Так это ваше "творение"? Статья в вики? Ну тогда всё вообще становится на свои места. А как же это:
Цитата
Это очень круто - ссылаться на самого себя  О многом говорит.

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

Цитата
На этом я закончу эту тему, извините.

Вобщем то и мне все ясно. Поддерживаю эту идею.

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

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.