Способы хранения паролей

Проверенные VDS на SSD в Европе от $4 и России: Датацентр №1 от 150руб | Датацентр №2 от 199руб

Тема в разделе "Вопросы по теории программирования", создана пользователем VKuznetsov, 10 сен 2017.

  1. MiksIr

    MiksIr miksir@home:~$

    Сообщения:
    3.119
    Ваш город:
    Третьяковская, Москва, город Москва, Россия
    Adress:
    Moskva, Russia
    Country:
    Location on Map:
    Потому что в случае утечки такого ключа (а его 100% защиту никто гарантировать не может) - эти хеши начинают щелкать как орешки. Тебе это уже говорили 100500 раз.
    Бред.
     
  2. Вурдалак

    Вурдалак Newbie

    Сообщения:
    5.910
    Ваш город:
    Russia, Moscow
    Adress:
    Moscow, Russia
    Country:
    Location on Map:
    Самый лучший способ не выдать исходный пароль — это не знать его вообще. А учитывая, что для данной задачи исходный пароль знать и не нужно, то использовать шифрование вместо хеширования — это некомпетентность.
     
  3. MiksIr

    MiksIr miksir@home:~$

    Сообщения:
    3.119
    Ваш город:
    Третьяковская, Москва, город Москва, Россия
    Adress:
    Moskva, Russia
    Country:
    Location on Map:
    Получить код совсем не значит получить возможность менять код.
    Получить возможность менять код совсем не значит, что это изменения продержаться долго и не будут перезатерты/обнаружены. А обнаружение закладок - не самый удачный способ заявить "посмотрите, вас хакнули".

    Самое главное, не ясно что вы пытаетесь доказать. Настолько принципиальны, что не в состоянии принять улучшение безопасности хранения паролей, которым пользуется весь мир? Ну так и пишите "я принципиальный, мне плевать на всех".
     
  4. S.Chushkin

    S.Chushkin Пофигист

    Сообщения:
    58
    Ваш город:
    Noginsk, Russia
    Adress:
    Noginsk, Russia
    Country:
    Location on Map:
    1) Не согласен. Думаю, вы ошибаетесь.
    2) Я не говорил, что шифрование лучше, чем хеширование - как раз наоборот. Но обратимое шифрование достаточно надёжный способ хранения информации, чтобы использовать этот метод. В т.ч. паролей - дело только в кривизне рук и извилин, т.е. в правильности применения метода.
    Насколько мне известно, приблизительно можно оценить применимость: если шифрование (обратимое/необратимое - не важно) даёт среднее время дешифрации инфы пару-другую десятков лет, то можно считать метод достаточно надёжным.
     
  5. Вурдалак

    Вурдалак Newbie

    Сообщения:
    5.910
    Ваш город:
    Russia, Moscow
    Adress:
    Moscow, Russia
    Country:
    Location on Map:
    «Обратимое шифрование» — это тавтология, потому что «необратимого» не существует.

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

    «Хранить то, что знать не нужно (а выдать — опасно)» это заведомо более проигрышная стратегия по сравнению с «не хранить то, что знать не нужно». Именно поэтому выбирать первую стратегию — это некомпетентность. Это увеличение рисков без каких-либо преимуществ.
     
  6. WMix

    WMix герр M:)ller Партнер клуба

    Сообщения:
    5.774
    Ваш город:
    Berlin
    Adress:
    Berlin, Germany
    Country:
    Location on Map:
    @S.Chushkin, а ты даешь себе отчет в том, что зашифрованный пароль, это нескольно излишняя информация, которой может воспользоваться работник.
    те hash это некий барьер который хоть и не гарантирует, но очень осложняет задачу пойска изначального пароля (bruteforce) даже с применением таблиц. при шифровании, это простая операция "расшифруй".
    если нет пароля и автризация происходит через внешний сервис типа openID то проблемы "могут украсть" нет
     
  7. MiksIr

    MiksIr miksir@home:~$

    Сообщения:
    3.119
    Ваш город:
    Третьяковская, Москва, город Москва, Россия
    Adress:
    Moskva, Russia
    Country:
    Location on Map:
    Я встречал случаи, когда необратимым шифрованием называли хеширование. Так что термин используется, но хеширование все же лучше.
     
  8. Вурдалак

    Вурдалак Newbie

    Сообщения:
    5.910
    Ваш город:
    Russia, Moscow
    Adress:
    Moscow, Russia
    Country:
    Location on Map:
    Я тоже это встречал, но это просто безграмотность. Достаточно взглянуть на определение слова «шифрование».
     
    Yoskaldyr, fixxxer, Andkorol и 2 другим нравится это.
  9. fixxxer

    fixxxer К.О.

    Сообщения:
    12.277
    Ваш город:
    Moscow, Russia
    Adress:
    Moscow, Russia
    Country:
    Location on Map:
    Тоже слышал, но это вообще глупость, по такой логике "необратимым шифрованием" можно назвать функцию
    PHP:
    function encrypt($s) {
        return 
    "";
    }
    Необратимо же :)
     
    AnrDaemon и Yoskaldyr нравится это.
  10. S.Chushkin

    S.Chushkin Пофигист

    Сообщения:
    58
    Ваш город:
    Noginsk, Russia
    Adress:
    Noginsk, Russia
    Country:
    Location on Map:
    Серьёзно?
    Надеюсь ты согласишься, что в нашем Мире есть вероятность любого события?
    Т.е. всегда есть риск, что злоумышленник:
    - получит ключ и получит вообще все пароли
    - получит хеши и подберёт пароли
    - получит доступ к коду и получит все данные
    - получит доступ к серверу и получит всё, что захочет
    - подключится к промежуточному узлу и получит трафик
    - подключится к кабелю и получит трафик
    - наконец, отловит админа и получит всё, что ему нужно. И без всякого напряга мозгов. :)

    Так что, разговор именно о надёжности (т.е. вероятности). Причём о "технической/технологической надёжности".
     
  11. Adelf

    Adelf Laravel&PhpStorm Команда форума

    Сообщения:
    3.050
    Ваш город:
    Казань
    Adress:
    Kazan, Russia
    Country:
    Location on Map:
  12. MiksIr

    MiksIr miksir@home:~$

    Сообщения:
    3.119
    Ваш город:
    Третьяковская, Москва, город Москва, Россия
    Adress:
    Moskva, Russia
    Country:
    Location on Map:
    Ты, наверное, и дорогу переходишь без светофоров где попало. А какой смысл в светофорах, если все-равно всегда есть вероятность, что собьют, даже если переходить по правилам.

    Только в твоем случае. В нашем - нет.
    Это возможно, да. См. ниже.
    Получит лишь те же хеши.
    Узнай про TLS
    И... получит лишь те же хеши.


    Вот именно. И в этом разговоре - хеши - само слабое звено, которое требует защиты от восстановления по ним исходного пароля. И способ это - повышение затрат на расчет хеша.
     
  13. Redjik

    Redjik Падаван

    Сообщения:
    3.785
    Ваш город:
    Yekaterinburg, Russia
    Adress:
    Yekaterinburg, Russia
    Country:
    Location on Map:
    Омг, серьезно?
    Любой, даже самый сложный хеш паролей тупо дает время.
    Время, чтобы среагировать и оповестить юзеров, что пароли их утекли =)
     
  14. grigori

    grigori Moderator Команда форума

    Сообщения:
    6.624
    Ваш город:
    Kharkiv, Ukraine
    Adress:
    Kharkiv, Ukraine
    Country:
    Location on Map:
    @Redjik, а еще он остро повышает стоимость взлома, делая взлом через подбор невыгодным
     
    WMix нравится это.
  15. MiksIr

    MiksIr miksir@home:~$

    Сообщения:
    3.119
    Ваш город:
    Третьяковская, Москва, город Москва, Россия
    Adress:
    Moskva, Russia
    Country:
    Location on Map:
    не факт, бывает, что ушедшая база паролей используется для получения доступа на других сервисах (предполагая, что пользователь использует один и тот же пароль).
    Правда не важно? Даже если речь идет о 3 часа vs 2 года и более? Т.е. вы даже не поинтересовались скоростями подбора? В интернете при желании можно найти даже в выражении через стоимость.
    Соль никогда не придумывалась для того, что бы усложнить прямой брутфорс одного пароля. А значит не может что-то облегчить.
    У вас как с понятием слова "баланс"? По мне, так баланс - это равноценные вложения и туда и туда. А вас послушать, так "баланс" - это выбор одного из подходов и воинствующее категорическое отрицание других подходов.
     
  16. Вурдалак

    Вурдалак Newbie

    Сообщения:
    5.910
    Ваш город:
    Russia, Moscow
    Adress:
    Moscow, Russia
    Country:
    Location on Map:
    @S.Chushkin чувак, тебе не надоело словоблудием заниматься? Просто назови уже наконец преимущества шифрования паролей над хешированием, если ты считаешь это «альтернативой». Я вижу только одно применение — мошенничество. Использовать собственную базу в плохих целях. То есть помимо технических рисков, появляются ещё и репутационные. Лично у меня сильно снижается доверие к сайту, если на запрос «сбросить пароль» по факту мне присылают мой старый пароль на почту. Я тут начинаю подозревать, что я вверил свои личные данные каким-то идиотам.

    Касаемо ключа, то у меня есть некоторый опыт взломов сайтов в прошлом, так обычно в половине случаев, если не чаще, код можно было прочитать через банальный LOAD_FILE(), т.е. если добрался до SQL injection, то и «сверхсекретный» ключ достать не проблема. А если разработчик действительно оказался тем идиотом, что просто шифрует пароли, то можно скомпрометировать всю базу за полчаса.
     
  17. S.Chushkin

    S.Chushkin Пофигист

    Сообщения:
    58
    Ваш город:
    Noginsk, Russia
    Adress:
    Noginsk, Russia
    Country:
    Location on Map:
    Не так.
    Есть пешеходный переход со светофором, где вероятность 1/1000, что задавят. Есть без перехода, где вероятность 1/100. И есть условие - переход в 2-х километрах от меня.
    В этот конкретный момент я решаю - готов ли я пройти 2км, потратив на это 40 минут, или я готов рискнуть и перебежать дорогу здесь, потратив на это 10 секунд, но при этом увеличив вероятность "задавят" на порядок. Это при условии, что всё остальное идентично.
    А если нет? Например, переходя через переход, человек надеется на правила, что машина его обязана пропустить, соотвественно сенсорика на минимуме. А переходя в неположенном месте, человек надеется в основном на себя, соотвественно сенсорика на максимуме. В результате, разница вероятностей "задавят" резко уменьшается.
    Точно так же и в безопасности хранения паролей, - в каждом конкретном случае решаешь что тебе нужно: 1\1000(условно) при большой куче денег или 1\500 при заметно меньшей, но с другим подходом.
    В той же теме показано, как легко положить сервер с помощью password_hash и можно легко посчитать сколько нужно серверов и денег, чтобы конкретный сайт не лёг.
     
  18. S.Chushkin

    S.Chushkin Пофигист

    Сообщения:
    58
    Ваш город:
    Noginsk, Russia
    Adress:
    Noginsk, Russia
    Country:
    Location on Map:
    Ткни пальцем, где я об этом говорил.
     
  19. S.Chushkin

    S.Chushkin Пофигист

    Сообщения:
    58
    Ваш город:
    Noginsk, Russia
    Adress:
    Noginsk, Russia
    Country:
    Location on Map:
    Всегда говорю по теме. Это только grigori считает, что не по теме и энергично удаляет мнения. Ну и ... ты, наверное (хотя один раз - случайность, я так думаю).

    Ну, если не читал ту тему, повторюсь: password_hash с параметрами как там описано, положит средний сервер уже при 2000 входов на сайт в час(!). Хорошо это или плохо - каждый решает сам. Я считаю, что плохо.
     
  20. Вурдалак

    Вурдалак Newbie

    Сообщения:
    5.910
    Ваш город:
    Russia, Moscow
    Adress:
    Moscow, Russia
    Country:
    Location on Map:
    Это не отвечает на вопрос почему нужно рассматривать шифрование в качестве альтернативного варианта.
    Ты просто берёшь какой-то крайний случай и говоришь: «смотрите, она выпила 6.5 литров воды за раз и умерла; вредна ли вода или нет — каждый решает сам. Я считаю, что вредна».
    Используй менее ресурсоёмкий алгоритм хеширования. Причину использовать шифрование ты до сих пор не высосал из своего пальца. Продолжай.