Метод, благодаря которому можно больше не запоминать пароли

0e3c5870fe434667834fd8a278bdb1b1.jpg

Мы на каждом шагу сталкиваемся с напоминаниями, что нужно делать пароли посложнее, причём для каждого сайта и сервиса пароль должен быть уникален. Здравый смысл в этих советах определённо есть. Но кем надо быть, чтобы запомнить несколько десятков паролей ко всевозможным почтам, форумам, личным кабинетам, мессенджерами и прочим сервисам? Да ещё и длинные, с цифрами, буквами в разных регистрах, а в идеале — с дополнительными символами. Добавьте к этому совет регулярно менять пароли, и задача запоминания станет просто нерешаемой. Люди ленивы от природы, и потому мы либо делаем пароли простыми, либо используем небольшое количество паролей, либо вообще один. И зачастую их ещё куда-нибудь записываем. Вобщем, одна сплошная дыра в безопасности. Однако есть одна методика, с помощью которой можно вообще не запоминать пароли. Всё дело в алгоритме, который нужно вызубрить как Отче наш, и этого будет достаточно, чтобы сразу же восстановить свой уникальный (!) пароль для любого ресурса.
Считается, что каждый из нас оперирует в среднем 19 паролями. Естественно, чтобы их было легче помнить, мы стремимся сделать пароли проще, тем самым существенно ослабляя их устойчивость. Ещё больше ухудшает ситуацию использование одного пароля на нескольких ресурсах.

Мануэль Блюм, профессор вычислительных наук из Университета Карнеги Меллона, лауреат Премии Тьюринга 1995 года, предложил метод «вычисляемых человеком» паролей. Его преимущества в том, что пароли получаются довольно сложными, но самое главное — их не нужно запоминать. Если вы сможете запомнить сам алгоритм вычисления паролей и заранее выбранный единый ключ, то потом по адресу сайта сможете самостоятельно быстро генерировать и воссоздавать пароли.

Суть метода в том, что с помощью алгоритма и ключа каждой букве адреса сайта сопоставляется другая буква или цифра. Их комбинация и представляет собой пароль.

Например: возьмём ключ в виде матрицы 6х6, заполненной 26 буквами (английский алфавит) и 10 цифрами. Допустим, первая строка содержит буквы E, T, A, O, I, N; а остальные строки заполнены в соответствии с ETAOIN SHRDLU + цифры от 0 до 9.

de604dccdc61435d82947d1ff08198e1.jpg

Теперь нужно выбрать алгоритм, в соответствии с которым буквы адреса будут заменяться символами из матрицы. Для данного примера возьмём предложенный Блюмом алгоритм, основанный на «следовании по сторонам света».

Придумаем пароль для сайта Geektimes. находим букву G в матрице и переходим на одну клетку на «север». Буква F становится заменой буквы G. Далее находим букву Е и заменяем её на символ, находящийся на «востоке» — Т. Следующий символ берётся с «юга», то есть вторая буква Е заменяется уже не на Т, а на S. Буква К заменяется на «западный» символ — G. И так далее, последовательно проходя все стороны света по часовой стрелке: север, восток, юг, запад. Если символ, которому ищется замена, находится на краю матрицы и у него нет нужной «стороны света», то берётся тот символ, что находится ближе всего по часовой стрелке. Например, если для J нужно взять символ с «востока», то берётся 4, поскольку «юг» идёт после востока в данном алгоритме.

Получился такой пароль:

b438abf656024641bf4e2897874972d4.jpg

Как вы понимаете, можно использовать и множество других алгоритмов для подбора замен. Можно модифицировать алгоритм, добавляя в каждый пароль заранее выбранную комбинацию спецсимволов, например, %^&.

Конечно, этот способ не слишком удобен для случаев, когда вам нужно часто вводить пароль на каком-то ресурсе. Но, с другой стороны, скоро вы его просто запомните. Зато можно забыть про генераторы паролей, запоминание комбинаций, опасения, что кто-то узнает ваш часто используемый пароль. Главное — держать в голове алгоритм и ключ под рукой.

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

© Geektimes