Андрей Смирнов
Время чтения: ~9 мин.
Просмотров: 11

Как придумать надежный пароль, который тяжело взломать

Система «ключ + контекст + формула»

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

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

  • Каждый охотник желает знать, где сидит фазан
  • Съешь-ка ещё этих мягких французских булочек да выпей чаю
  • Глаза — часть мозга, вынесенная на периферию
  • Grumpy Wizards Make Toxic Brew For the Evil Queen & Jack

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

Далее рассмотрим URL-адрес — контекст. Для какого URL создается пароль? Если это не для веб-службы, то выберите любое доминирующее имя в контексте. Например, если это для игры, используйте название игры. Если это для Wi-Fi, вы можете использовать SSID. Если это для вашего локального компьютера, вы можете использовать имя компьютера или имя вашего жесткого диска. Если это для вашей электронной почты, вы можете использовать собаку и аббревиатуру доменного имени с точкой (например, @g.c для gmail.com).

Наконец, формула. Главный секрет — создать формулу, основанную на комбинации случайного ключа и первичного имени в контексте. Вы можете начать с первых трех букв имени, затем — подчеркивание, а затем — случайный ключ. Возможно, вы захотите пойти немного дальше и взять две первые и две последние буквы имени и ввести их в обратном порядке со случайным ключом и тремя восклицательными знаками. Или можете взять первые три символа имени и увеличить их значения на единицу, так что ‘yah’ станет ‘zbi’, а ‘gma’ — ‘hnb’. Главное — удобное для вас сочетание ключа и формулы. Это может сначала показаться сложным, но как только вы запомните этот случайный ключ, и формула станет второй натурой, вы станете машиной-генератором крутых паролей.

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

Хранение ключей

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

На память надеяться не стоит, а вот на менеджера паролей можно положиться. Многие пользователи выбирают KeePass. Эта программа распространяется бесплатно и работает на Windows 7, Windows 10 и других современных версиях ОС от Microsoft. Кроме того, в KeePass есть встроенный генератор паролей, так что вам не придется каждый раз искать онлайн-сервисы.03-novaya-baza-paroley-KeePass.png

Минус менеджера пароля только в том, что для него тоже нужен код доступа, который называется мастер-пароль. Но запомнить один мастер пароль гораздо проще, чем держать в уме несколько десятков сложных комбинаций. К тому же при его создании можно воспользоваться хитростью – взять за основу стихи, считалочки или любые другие запоминающиеся строчки и превратить их в сочетание букв, цифр и знаков.04-stihotvorenie-dlya-sozdaniya-parolya.jpg

Например, можно взять четверостишие, выделить первые буквы и знаки препинания, а затем написать их на латинской раскладке. Некоторые буквы можно заменить цифрами – «з» на «3», «о» на «0», «ч» на «4». В результате такой манипуляции из четырех строчек детского стихотворения, которое никогда не вылетит из головы, получится пароль U0d?D3ep.Gzc3hek, на взлом которого уйдет 3 триллиона лет.

Итого

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

Плюсы

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

Минусы

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

Генерация паролей

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

  • Трудно придумать сложный пароль.
  • Даже если вы создадите пароль, содержащий случайный набор символов, тяжело (иногда просто невозможно) его запомнить.

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

Работают онлайн генераторы по одному принципу: вы указываете, какие символы нужно использовать, выбираете требуемое количество знаков и нажимаете «Сгенерировать». Отличаются сервисы лишь в частных моментах.02-onlayn-generator-paroley.png

Например, на Pasw.ru можно сгенерировать сразу несколько десятков паролей (до 99 комбинаций). PassGen позволяет установить опцию автоматического исключения повторяющихся символов из ключа безопасности, то есть все знаки в нем будут в единственном числе.

Решение

Допустим, я решил поиграть в онлайн-игру «Овощной магнат» (игра выдумана, все совпадения случайны). Создаю там аккаунт и мне нужен пароль.

Осмысленность

Для легкого запоминания пароль должен быть осмысленным, т.е. это должно быть слово или фраза. Много кому известно, что человек хорошо запоминает ассоциации, поэтому в идеале это слово/фраза должны быть ассоциативно привязаны к тому, для чего мы создаем пароль.У меня возникла ассоциация «баклажан»

Латиница

Во избежание зла (проблемы с кодировкой), пароль должен использовать английскую раскладку. Также слово/фраза в пароле не должно быть записано по-русски (по-украински, по-арабски, по-китайски и т.д.) с использованием английской раскладки иначе можно очень сильно встрять при отсутствии русской (подставить по выбору) клавиатуры. Также нельзя использовать транслит, т.к. нет единого стандарта транслита. Отсюда мораль – самым логичным решением будет перевести слово на язык, использующий только латинский алфавит (никаких диакритических знаков, кириллицы, иероглифов и т.п.). Например, английский или латынь. Кстати, использование латыни в данном случае очень интересно – никто никогда в здравом уме не будет делать словарь для брутфорсера под латынь.Поскольку я не знаю латыни — перевожу на английский. Получилось — aubergine

Регистр

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

Спецсимволы

Также в пароле должны присутствовать цифры и специальные символы. Для этого надо для части букв алфавита придумать замену из зрительно похожих символов и цифр. Пароль после этого останется вполне удобочитаемым. Кстати для кул-хацкеров и про-геймеров в этом нет ничего нового, многие из них свои ники именно так и записывают. Например, a=@, e=3, i=! и т.д. Нюанс — не нужно заменять весь алфавит, достаточно лишь некоторой части, т.к. может получиться, что пароль будет состоять из одних лишь спецсимволов – тоже не очень хорошо. Есть вариант использовать спецсимволы только из цифровых клавиш, т.к. если в каком-либо сервисе не будет возможности использовать спецсимволы, вы просто «дауншифтите» их на соответствующие им цифры. Например @=2, !=1 и т.д.

Длина пароля

Для этого вводятся понятия «открывающего» и «закрывающего» символа. Иногда нужно сделать пароль короче (бывает, ставят ограничение на длину) для этого мы можем убрать «символы». Некоторые сервисы криво работают с паролями, начинающимися со спецсимволов. В частности, Aurvote для дистрибутива Arch Linux некорректно обрабатывает пароли, начинающиеся с символа «$». Поэтому может быть логичным «открывающий» символ делать цифрой, а «закрывающий» — спецсимволом.Добавляю «открывающую» цифру «1» и «закрывающий» спецсимвол «)». Получилось — 1 @UB3Rg!n3) Чтож, помоему не так уж и плохо — одиннадцатисимвольный пароль, содержащий все типы символов и при этом достаточно свободно читается, по большому счету требуется помнить только слово-ассоциацию.

Правила создания паролей

Практически на всех сайтах при регистрации есть список требований к паролям. Однако обычно требования эти минимальные: не менее 8 символов, не может состоять только из цифр или букв и т.д. Для создания реально сложного пароля необходимо помнить еще о нескольких ограничениях.

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

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

01-Advanced-PDF-Password-Recovery-dlya-vzloma-paroley.png

Программа Advanced PDF Password Recovery для взлома паролей, установленных на PDF документ. Использует брутфорс, позволяет тонко настроить подбор, отметив используемые в пароле символы.

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

  • Дата рождения (05041992) – будет взломан за 3 миллисекунды.
  • Имя с маленькой или заглавной буквы (Segey, sergey) – продержится 300-500 миллисекунд, то есть меньше, чем полсекунды.
  • Комбинации из цифр и строчных букв (1k2k3d4a9v) – примерно 1 день.
  • На взлом пароля вида HDA5-MHJDa уйдет около 6 лет.
  • Комбинация AhRn&Mkbl363NYp будет расшифрована через 16 миллионов лет.

Никакие 16 миллионов лет и даже 6 лет взломщик работать не будет – это значение лишь демонстрирует, что взломать пароль в приемлемый срок невозможно.

Используемые источники:

  • https://contorra.ru/ru/kak-generirovat-i-zapominat-slozhnye-paroli-ili-generator-mnemonicheskih-paroley
  • https://compconfig.ru/bezopasnost/kak-pridumat-parol.html
  • https://m.habr.com/ru/post/49678/

Рейтинг автора
5
Материал подготовил
Максим Иванов
Наш эксперт
Написано статей
129
Ссылка на основную публикацию
Похожие публикации