Действительно ли столь простая операция приведет к необратимому хешированию пароля?
function subm5($string = '')
{
$string = md5(substr($string, 0, 3)) . $string;
return md5( $string );
}
Встретил данную функцию на просторах интернета.
Также упоминалось, что чем длиннее пароль тем сложнее дешифровка в невероятной прогрессии.
# NURD (08.08.2014 / 17:05)
Действительно ли столь простая операция приведет к необратимому хешированию пароля?
md5 и так необратимо хеширует.
третья тема от тебя про мд5 вроде как уже
Шифрование мд5 не расшифровуеться и никкакие соли не улучшат защиту. Пароль можно либо подобрать брутфорсом из-за чегоо и увеличивается в прогрессии время на подбор при большей длине пароля, либо же можно погпробовать пробить его по базе существующих расшифровок(просто бот поочерёдно все комбинации в базу заносит и это потом сверяется), вот здесь то и надо соль, в идеале, чтобы защитить хеш от такого подбора достаточно к примеру все единицы инвертировать в пятёрки, 8 в 2, и ещё пару таких правил, вот это и будет идеальной защитой )
Ну начнем с того, что сама функция бесполезна.
Зачем тебе данная функция, если ты потом сам же не сможешь распознать свой пароль?
Ты скорее всего не разобрался в криптографическом алгоритме шифрования с солью.
Он (алгоритм) подразумевает, что когда ты собираешься хэшировать пароль, к нему ты добавляешь строку в несколько символов, которая называется "Соль". Потом ты все хэшируешь.
Но дело в том, что саму соль ты должен хранить у себя, это твой ключ к проверке пароля, не имея соли ты не сможешь потом проверить свой пароль по базе.
А в той функции, соль обрабатывается substr(), что искажает изначально переданный функции параметр (теряется исходная соль).
# Onatolich (10.08.2014 / 01:20)
Шифрование мд5 не расшифровуеться и никкакие соли не улучшат защиту.
Первое утверждение верно, а вот со вторым позволю себе не согласиться.
Соль - для того и придумали, чтоб усложнить расшифровку по радужным таблицам.
Данная функция используется для того, чтобы соль для каждого пароля была разной.
Суть функции в том что она удленняет пароль на 32 символа благодаря хэшу первых трех.
В итоге у нас получается соленый паролик, соль которого для сверки "хранить у себя" не нужно.
Более того базу "самосоленых" паролей вы ненайдете. Под "необратимо" я подразумевал - безопасно, значит не существовало в базах и брутом не подобрать.
Естественно брут можно написать. Но сами 2 функции md5 уже существенно замедляют процесс брута на любом языке. Ассемблер уже выдаст максимум 30-150 млн. комбинаций в секунду а не 60-300 млн.
Наполнять базу такой сложности будет довольно сложно в связи с увеличенной нагрузкой. Да и используется такой алгоритм только на одном проекте (на работе встретил в коде).
Решил спросить что думаете вы по-этом поводу. Но похоже здравомыслящих людей здесь нет. Одни батхёрдщики)))
ББ.
NURD, Как по мне и обычный шифр паролей который есть на Джоне вполне справляеться со своей работой и без супер соли.
Зачем так всё усложнять солью я не понимаю, там же не банк система где нужна повышенная защита от взлома акков.
NURD, самосоление конечно интересно, главное рецепт только ты знаешь, но опять же все можно подобрать при желании если знать не много информации
а как это привязать к нашему движку,у меня ломают анкеты почти каждый день,уже не знаю что делать