Как стать автором
Обновить

Комментарии 39

ssh уже давно по ключикам работает.
А где не по ключику — тот ССЗБ.
Пора бы уже и сайтам генерировать ключики для пользователей…
Указал на директорию с ключами — и всё ок, по https шифруем и заходим. И нет проблем с запоминанием over 100500 криптостойких паролей на каждый сайтик.
А то такими темпами и утечками паролей, к 2038 году будет единая база с паролями, с помощью которой оный можно будет подобрать за 30 минут перебора… Ну, это учитывая вычислительные мощности будущего :)
Тогда придется иметь эту папку на всех устройствах, которую пользователи будут синхронизировать с помощью какого-нибудь сервиса, при взломе которого вы потеряете сразу все аккаунты на всех сервисах
В этом смысле U2F — интересное решение, жаль только что дешёвых токенов нет.
Yubikey FIDO U2F стоит $18, но доставка у них не гуманная, да.
Нужно что-то аппаратное и с блютусом беспроводное.
и кнопка забыл пароль потерял брелок
Yubico Neo, U2F c NFC
НЛО прилетело и опубликовало эту надпись здесь
С этим поможет справится список одноразовых паролей. Наподобии тех, что выдаются банкоматами. Зашёл с незнакомого устройства — вводи одноразовый пароль — получай ключик на новое устройство.

Да и к тому же… У меня всего 3 устройства, с которых я регулярно посещаю ресурсы, на которых зарегистрирован. А у вас?
Это ещё вопрос, что надёжнее — обычный файлик на компе или нигде не записанная последовательность символов.
файлик зашифрованный нигде не записанной последовательностью символов.
Ну а зачем тогда вообще файлики, если можно использовать последовательность символов напрямую? Расшифровать файлы с ключами будет не сложнее, чем собственно сам пароль.
Двухфакторная аутентификация. Если уйдет файл ключа, то они будут защищены паролем. Если уйдет пароль, то без ключа он бесполезен, а ключ на физическом носителе.
НЛО прилетело и опубликовало эту надпись здесь
> Указал директорию с ключами
Зашифрованную ключом 12345, потому что другие лень запоминать. Да и то, в случае внезапной смерти винта оно не спасёт отца русской демократии.

RSA SecurID брелки — пока лучшее из того, что я видел.

А от подбора по словарю оно защитит?
Защитит. Никто не запрещает добавлять числа и имена собственные, знаки препинания, брать длинные известные фразы и менять в них пару слов. «lorem ipsum dolor, and 2 more words»
Вся прелесть именно в том, что получается стойкий пароль, даже если атакующий знает его формат и будет подбирать по словарю.
От подбора по словарю защитит, точнее всё равно даст заявленную сложность, даже если атакующий знает, что пароль сгенерирован именно так и располагает нужным словарем.

Тем не менее есть нюансы, касающиеся вариаций метода. Когда этот комикс появился, я долго размышлял над ним, предлагаемый метод не совсем очевиден и требует пояснений. Нужно взять небольшой словарь общеупотребительных слов (из приведенных в комиксе цифр можно сделать вывод, что размер словаря всего 2к слов), выбрать стохастически четыре слова из него и использовать в точности их в качестве пароля. В этом случае будет получена заявленная сложность (44 бита энтропии). Если выбирать слова для пароля более придирчиво, например, отбрасывать непонравившиеся и заменять их своими или сгенерированными заново, то полученная сложность может оказаться ниже заявленной. Впрочем, простое добавление слов и символов к сгенерированным словам не должно ухудшить сложность.
… и наткнуться на «пароль не может быть длиннее 10 символов, а так же содержать знаки препинания и пробелы» :)
Что в переводе на человеческий означает «мы храним ваш пароль в открытом виде».
Придётся мириться, если сервис нужен, хоть временно. Потому пока для себя нашел единственный выход — менеджер паролей (конкретно KeePassX), и генератор там есть, и удобный очень.
Я не доверяю менеджерам паролей. Себе я придумал максимально сложный мастер-пароль, подходящий под распространённые условия (точнее два его варианта, под совсем изуверские и под более-менее терпимые), и модифицирую его под конкретный ресурс по заданным правилам. Требуется помнить лишь этот мастер и правила, вместо чесания в затылке или копания в менеджере на лету генерируется нужный.
Если будут скомпрометированы хотя бы два из ваших паролей, шаблон станет очевидным для злоумышленника. Придется менять все. Даже если скомпрометирован только один пароль, поменять его будет проблемой. Чтобы не отказываться от метода, нужно будет поменять его на довольно похожий.

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

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

А слабость вашего метода в единой точке отказа
Да, этого я не отрицал.
В данном случае, если не ошибаюсь, метод N-грамм будет щелкать такие пароли как орехи.
С появлением возможности анализировать миллионы слитых паролей этот комикс несколько устарел, при всем уважении к xkcd. В этом основной смысл сабжевого исследования.
На каком-то известном сайте (с ходу не вспомню) я как-то попробовал шутки ради завести себе юзера с паролем correct horse battery staple — не смог. Сайт не принял пароль, сообщив что-то вроде «не следует понимать комиксы буквально».
не следует понимать комиксы буквально
Да, разработчики с юмором были. Однако пароль-то прочитали :) Хотя, возможно, просто хэш от этой фразы сравнивали.
Я по привычке ждал ссылку на очередной онлайн сервис для проверки пароля на предсказуемость в конце статьи.
Мораль — ставьте единичку в начало пароля, а не в конец)
А если серьезно — программистам, не юзающим хеширование с солью (даешь bcrypt!), нет оправдания. Кроме доработки старой системы, но и там возможны варианты.

В качестве дешевого и сердитого варианта я использую OTTP пароли через Google Authenticator — есть и сайты, которые его поддерживают, и библиотеки для написания своего софта с совместимой авторизацией. Правда, безопасен он только для тех, кто никогда не логинится с телефона, на котором установлен Google Authenticator.
НЛО прилетело и опубликовало эту надпись здесь
— если у двух пользователей одинаковые пароли, то и хеши у них будут одинаковые. Т.е. если хакеры слили базу паролей, то посчитав хеши по 1000 самых популярных паролей, они сразу смогут найти пользователей, у которых такие пароли. При наличии соли каждого пользователя пришлось бы брутить индивидуально
— простой sha1 плох тем, что в современных процессорах есть аппаратная поддержка этого хеша. Т.е. на разных системах скорость расчета хеша может отличаться на порядки, что усложняет выбор количества раундов — и чтобы было безопасно, и чтобы ресурсы сервера экономить.
НЛО прилетело и опубликовало эту надпись здесь
Когда мне нужны пароли, я делаю просто:

# sudo apt-get install pwgen
# pwgen -s 25 150

и выбираю какой попадется под руку
Решетка в начале команды и так говорит, что выполнение идёт из-под root. sudo излишне.
Чем мне нравится pwgen, так это тем, что он не генерит рандомную строку, а составляет её из отдельных слогов или частей слов, часто в рифму. Бывают довольно прикольные строки, которые просто ради смеха на раз запоминаются.
А мне он не нравится именно этим. Т.к. в мануале не написано, сколько же бит энтропии содержат такие пароли.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий