Безопасное использование паролей

Сколько паролей вам приходится запоминать? 10, 20 или больше? Проблема хранения и запоминания паролей всегда актуальна. Но почти у каждого метода хранения есть «узкое место». Для себя я выделил несколько основных способов хранения паролей и сейчас мы рассмотрим эти способы, их слабые и сильные места. Далее я приведу вам свой метод генерации паролей. Именно генерации, т.к. запомнив 3 правила, мы сможем воссоздать любой пароль. При этом каждый пароль будет обладать уникальностью, и хранить его нигде не нужно.

Как мы храним пароли?

Один пароль для всех сайтов

Тут все довольно просто, вы можете придумать один пароль (пусть даже и в некоторых вариациях) и применять его для всех своих учетных записей.

Плюсы

Просто и легко, придумываем пароль везде его применяем.

Минусы

Злоумышленник, получив ваш пароль – получает доступы ко всем вашим сайтам.

Запоминание уникальных паролей

Вы можете для каждой учетной записи генерировать уникальный пароль и пытаться их запомнить.

Плюсы

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

Минусы

Если у вас очень много паролей – нужно все их держать в голове, что практически невозможно.

Хранение уникальных паролей на бумажном носителе

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

Плюсы

Пароли уникальные, носитель спрятан в надежном (или нет…) месте.

Минусы

Если вы не запомнили пароли и бумажки под рукой нет – вы теряете доступ к своим учетным записям. Если вашим листочком кто-либо завладел- он получает все доступы. Тут мы получает два слабых места.

Хранение уникальных паролей в менеджере паролей

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

Плюсы

Пароли уникальны. Легко получить доступ и не нужно все хранить в голове.

Минусы

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

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

Когда мы имеем дело с паролями, нам в любом случае придется что-то запоминать (если запоминать ничего не приходится – значит метод хранения плохой). Здесь нам тоже нужно будет запомнить несколько правил, по которым будет генерироваться пароль для всех ваших ресурсов. Количество этих правил 3 (может быть больше) – но это гораздо меньше, чем запомнить все ваши пароли.

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

На данный момент хэш функций существуем довольно много, например, sha-1, sha-2, и т.д.

Итак, как же генерировать пароль?

Шаг первый

Нужно придумать последовательность символов (фразу), которая будет зависеть от ресурса, к которому создается пароль, а также от времени, когда он создается (чтобы иметь возможность менять пароль раз в определенный промежуток времени). Так же в последовательность нужно добавить какую-то статичную часть, например, наше имя (в моем случае – igor), или имя с фамилией, или вообще все что вам угодно – главное, чтобы вы это запомнили и смогли воспроизвести.

В итоге мы получи правило составления последовательности: <ресурс>_igor_<год> или <ресурс>_<год>_igor

Например, мы придумываем пароль к aliexpress в 2023 году, наша фраза: aliexpress_2023_igor

Запомнить: Правило составления фразы.

Шаг второй

Теперь нам нужно получить хеш составленной последовательности. Выбираем любую хеш функцию, которую будем использовать. И генерируем хеш нашей фразы. К примеру, мы решили использовать sha-1. Переходим на сайт генерации хеша по sha-1, вставляем нашу строку в поле исходных данных и хешируем (сайт можно использовать любой, забив в поиск sha-1 онлайн генератор).

хэш SHA-1 чтобы сгенерировать пароль

Рисунок 1. Генерация хеш-строки на сайте.

Получаем для нашей фразы хеш: deb70eae9fdbcc98583cc58f396a0f39c3b34cc3

Данный хеш удовлетворит любое требование к длине пароля.

Запомнить: Название хеш функции, которой будет хешироваться фраза.

Шаг третий

Для большинства сайтов обязательно наличие больших и малых букв и спец. символов.

Но, как вы уже наверно заметили, в полученной последовательности нет специальных символов и большой буквы. Поэтому нужно добавить спец символ и большую букву. Какой символ, и какую букву – решать уже вам. Это может быть статичный знак и одна буква. Например, ко всем последовательностям в начале добавляем $H. Или можно добавлять символ $ в начале и букву из этого же хеша (которая встречается первая) в конец хеша.

Получим: $deb70eae9fdbcc98583cc58f396a0f39c3b34cc3D – это и будет пароль к ресурсу.

$- приписываем в начале;

D – первая буква встречающаяся в хеше, приписываем в конце.

Запомнить: Символ и букву (или их последовательность), либо правило их получения. А также куда их приписывать.

В итоге, мы получаем длинный сложно взламываемый пароль, запомнив всего три правила:

  1. Правило составления фразы.
  2. Функцию, которой будет кэшироваться фраза.
  3. Символ и букву (или их последовательность), либо правило их получения. А также куда их приписывать.

Даже если злоумышленник узнает каким образом вы получаете фразу – ему еще нужно узнать функцию хеширования и добавочным символы.

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

Криптографическая соль

Можно повысить взломостойкость пароля, придумав дополнительные правила – например выписывать их хеша не все символы, а, например, 10 символов начиная с 3-го (все четные, все нечетные и т.д.). Таких правил может быть сколько угодно, главное, чтобы вы смогли запомнить их все, никуда не записывая.

Рекомендации

 Помимо сложного пароля, я вам рекомендую

  1. Включать двухфакторную аутентификацию там, где это возможно.
  2. Использовать вкладку инкогнито на чужих компьютерах.
  3. Периодически чистить историю своего браузера.
Другие проекты

3D-принтер своими руками

Оставьте комментарий