это не соль... это "перец". Если таки взломают базу и сядут хеши рассекречивать, а код останется не доступным - ничего не получится, тк есть еще и перецСталкивался с тем, что соль может храниться, к примеру где ни будь в виде переменной - обычно в настройках сайта (config).
Что то больно много всего полезного там... В общем читаю весь ресурс.омг, вот я не думал что в родном пхпклуббе придется разжевывать, что такое радуга и зачем соль.
Читайте пока тут http://www.phpfaq.ru/hashing
выводы я допишу позже
если соль неуникальная, то то, чем ты будешь заниматься после получения соли, будет называться брут.Фанат, а разница? зарегестрироавлся, получил свой хэш, перебрал с учетом своего пароля, получил соль. вопрос только времени
Длина пароля тут никакой роли не играет, кроме частоты их использования. Это же хеш-функция, длина результата фиксированная. И тебе не нужен исходный текст - тебе нужен текст, дающий аналогичный хеш. Да, количество вариантов хешей огромно, но их множество все равно заведомо и намного меньше, чем количество комбинаций символов.Далее, надо себе представлять, в чём особенности хэширования именно паролей. Основная проблема паролей состоит в том, что они сравнительно короткие. Если при хэшировании довольно длинного текста можно [до определённой степени] быть уверенным, что никто и никогда не подберёт исходный текст по имеющемуся хэшу, то в случае с паролем такой вариант в принципе возможен. А при определённых условиях - и весьма вероятен.
Ты неприемлемо уменьшаешь количество вероятных исходных данных. твою рекурсию в 100 проходов выкинут, и будут искать коллизию с текстом с ограниченным набором символов, и заведомо известной длиной - то, что получится на 99 проходе. Брутфорсом тебя в таком раскладе можно перебрать за смешное время.Фанат, я считаю что мд5 ( одна и таже соль (10-30 символов) с паролем хешем от предыдушего вызова) в рекурсии 100 раз чтоб затормозить генератор будет вполне достаточна
Найти коллизию заведомо сложнее,чем сбрутить исходный пароль.Длина пароля тут никакой роли не играет, кроме частоты их использования.
хорошо, я перечитал еще раз твой абзац, и наверное соглашусь с ним в той формулировке. С точки зрения математики он может быть не точен, но область обсуждения действительно, достаточно узкая, что бы можно было принять за данность, что пароли почти всегда короче хеша, и что перебирать их всегда будут с точки зрения наибольшего ожидания человеческого поведения при выборе пароля.В том-то и дело, что при парольных длинах хэшируемой строки - микроскопических по сути - как раз длина-то и играет ключевую роль.
С одной стороны, это действительно просто обёртка над бкриптом.и про новый http://php.net/password_hash в пхп, который значительно упрощает
Ты видел, как в бкрипте создавать нормальный хеш? Там надо с мануалом наверно сидеть час, и все равно можно сделать неверно. Мне кажется, это важная вещь, которая упрощая - мешает делать неправильно. И поэтому ее нужно пропагандировать. Помнится, была презенташка чья-то, кажется, Альшанецкого, где было показано, что с бкриптом не справляются даже такие гиганты, как линкдин.С одной стороны, это действительно просто обёртка над бкриптом.
С другой - только ради *удобства* упоминать смысла никакого нет. Там весь упор как раз на скорость создания хэша - о чем у меня и говорится.
дещевле 100 раз прокрутить чем подбирать 16³² для каждого пользователяТы неприемлемо уменьшаешь количество вероятных исходных данных. твою рекурсию в 100 проходов выкинут, и будут искать коллизию с текстом с ограниченным набором символов, и заведомо известной длиной - то, что получится на 99 проходе. Брутфорсом тебя в таком раскладе можно перебрать за смешное время.