Сколько паролей вам приходится запоминать? 10, 20 или больше? Проблема хранения и запоминания паролей всегда актуальна. Но почти у каждого метода хранения есть «узкое место». Для себя я выделил несколько основных способов хранения паролей и сейчас мы рассмотрим эти способы, их слабые и сильные места. Далее я приведу вам свой метод генерации паролей. Именно генерации, т.к. запомнив 3 правила, мы сможем воссоздать любой пароль. При этом каждый пароль будет обладать уникальностью, и хранить его нигде не нужно.
Как мы храним пароли?
Один пароль для всех сайтов
Тут все довольно просто, вы можете придумать один пароль (пусть даже и в некоторых вариациях) и применять его для всех своих учетных записей.
Плюсы
Просто и легко, придумываем пароль везде его применяем.
Минусы
Злоумышленник, получив ваш пароль – получает доступы ко всем вашим сайтам.
Запоминание уникальных паролей
Вы можете для каждой учетной записи генерировать уникальный пароль и пытаться их запомнить.
Плюсы
Тут, конечно, все очень хорошо – пароли уникальные, даже если злоумышленник узнает один ваш пароль, остальные ресурсы останутся в безопасности.
Минусы
Если у вас очень много паролей – нужно все их держать в голове, что практически невозможно.
Хранение уникальных паролей на бумажном носителе
Вы генерируете уникальные пароли для каждой учетной записи, и записываете их на бумагу, которую храните в надежном месте.
Плюсы
Пароли уникальные, носитель спрятан в надежном (или нет…) месте.
Минусы
Если вы не запомнили пароли и бумажки под рукой нет – вы теряете доступ к своим учетным записям. Если вашим листочком кто-либо завладел- он получает все доступы. Тут мы получает два слабых места.
Хранение уникальных паролей в менеджере паролей
Вы так же генерируете уникальные пароли для ваших учетных записей. И храните их в специализированной программе в зашифрованном виде. В свою очередь вход в программу так же защищен паролем. Тут все почти так же, как и с бумажкой. Но вход в программу защищен паролем – это и является узким местом этого метода – получив пароль от программы, злоумышленник получает доступ ко всем вашим паролем.
Плюсы
Пароли уникальны. Легко получить доступ и не нужно все хранить в голове.
Минусы
Получив доступ в менеджер паролей – будет получен доступ ко всему. Если менеджер паролей установлен на одном компьютере и не имеет облачного хранения – то пользоваться вы сможете им только на одном компьютере.
Думаю, я перечислил почти все основные методы хранения паролей. Теперь хочу предложить свой метод, который позволит не хранить пароли вообще.
Когда мы имеем дело с паролями, нам в любом случае придется что-то запоминать (если запоминать ничего не приходится – значит метод хранения плохой). Здесь нам тоже нужно будет запомнить несколько правил, по которым будет генерироваться пароль для всех ваших ресурсов. Количество этих правил 3 (может быть больше) – но это гораздо меньше, чем запомнить все ваши пароли.
В моем методе будут использоваться хэш-функции. Они есть разные и различаются длинной строки и методом генерации. Если в двух словах, то хэш функция – это функция, на вход которой подается произвольная последовательность символов, а на выходе мы получаем строку фиксированной длинны сгенерированной по некоторым правилам. При этом важное свойство хэш функции в том, что при малейшем изменении входящей строки – мы получим совершенно другую результирующую строку.
На данный момент хэш функций существуем довольно много, например, sha-1, sha-2, и т.д.
Итак, как же генерировать пароль?
Шаг первый
Нужно придумать последовательность символов (фразу), которая будет зависеть от ресурса, к которому создается пароль, а также от времени, когда он создается (чтобы иметь возможность менять пароль раз в определенный промежуток времени). Так же в последовательность нужно добавить какую-то статичную часть, например, наше имя (в моем случае – igor), или имя с фамилией, или вообще все что вам угодно – главное, чтобы вы это запомнили и смогли воспроизвести.
В итоге мы получи правило составления последовательности: <ресурс>_igor_<год> или <ресурс>_<год>_igor
Например, мы придумываем пароль к aliexpress в 2023 году, наша фраза: aliexpress_2023_igor
Запомнить: Правило составления фразы.
Шаг второй
Теперь нам нужно получить хеш составленной последовательности. Выбираем любую хеш функцию, которую будем использовать. И генерируем хеш нашей фразы. К примеру, мы решили использовать sha-1. Переходим на сайт генерации хеша по sha-1, вставляем нашу строку в поле исходных данных и хешируем (сайт можно использовать любой, забив в поиск sha-1 онлайн генератор).

Рисунок 1. Генерация хеш-строки на сайте.
Получаем для нашей фразы хеш: deb70eae9fdbcc98583cc58f396a0f39c3b34cc3
Данный хеш удовлетворит любое требование к длине пароля.
Запомнить: Название хеш функции, которой будет хешироваться фраза.
Шаг третий
Для большинства сайтов обязательно наличие больших и малых букв и спец. символов.
Но, как вы уже наверно заметили, в полученной последовательности нет специальных символов и большой буквы. Поэтому нужно добавить спец символ и большую букву. Какой символ, и какую букву – решать уже вам. Это может быть статичный знак и одна буква. Например, ко всем последовательностям в начале добавляем $H. Или можно добавлять символ $ в начале и букву из этого же хеша (которая встречается первая) в конец хеша.
Получим: $deb70eae9fdbcc98583cc58f396a0f39c3b34cc3D – это и будет пароль к ресурсу.
$- приписываем в начале;
D – первая буква встречающаяся в хеше, приписываем в конце.
Запомнить: Символ и букву (или их последовательность), либо правило их получения. А также куда их приписывать.
В итоге, мы получаем длинный сложно взламываемый пароль, запомнив всего три правила:
- Правило составления фразы.
- Функцию, которой будет кэшироваться фраза.
- Символ и букву (или их последовательность), либо правило их получения. А также куда их приписывать.
Даже если злоумышленник узнает каким образом вы получаете фразу – ему еще нужно узнать функцию хеширования и добавочным символы.
Так же я предполагаю, что если вам понадобился пароль – то у вас есть доступ к интернету, а соответственно и к сайту, где вы можете воспользоваться хэш-функцией. Так же можно установить на телефон приложение для хеширования. Пароли – созданные таким способом – не нужно нигде хранить, запоминать или записывать, все будет воспроизводиться на лету.
Криптографическая соль
Можно повысить взломостойкость пароля, придумав дополнительные правила – например выписывать их хеша не все символы, а, например, 10 символов начиная с 3-го (все четные, все нечетные и т.д.). Таких правил может быть сколько угодно, главное, чтобы вы смогли запомнить их все, никуда не записывая.
Рекомендации
Помимо сложного пароля, я вам рекомендую
- Включать двухфакторную аутентификацию там, где это возможно.
- Использовать вкладку инкогнито на чужих компьютерах.
- Периодически чистить историю своего браузера.