Альтернатива сложным комбинациям: оценили надежность и удобство эмодзи-паролей

image-loader.svg

Всем привет! Меня зовут Валерий Кузьменков, я работаю аналитиком информационной безопасности в Positive Technologies (если интересно, чем занимается мой отдел и почему специалисты этого направления уникальны на рынке, читайте другой наш пост).

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

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

Золотой стандарт

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

Давайте рассчитаем точное число вариантов для пароля такой длины. В современном английском алфавите 26 букв, а для записи всех чисел мы используем 10 арабских цифр — от 0 до 9. В группу специальных символов, в свою очередь, входят !» # $ % & ' () * + , -. / : ; < = >? @ [ \ ] ^ _ ` { | } ~ и пробел. Отмечу, что некоторые разработчики ограничивают использование определенных символов, но я не буду брать это в расчет.

Итого: 33 спецсимвола.

Получается, что для каждого символа в пароле предусмотрено 95 вариантов. Для желающих меня проверить привожу подробный расчет: 26 букв верхнего регистра + 26 букв нижнего регистра + 10 цифр + 33 спецсимвола = 95. Тогда полному 8-символьному паролю будет соответствовать 958 вариантов, или 6 634 204 312 890 625, если перевести в числовое выражение. Далее я буду отталкиваться от этого числа.

Как дела у эмодзи

В настоящее время насчитывается 1809 эмодзи — это значительно больше, чем число вариантов, приходящихся на один символ в пароле.

Сколько эмодзи нужно, чтобы максимально приблизиться к числу вариантов, которые дает «золотой стандарт»?

18094 = 10 709 131 895 361

18095 = 19 372 819 598 708 049

Выходит, хватит и пяти.

Как заявляет Microsoft, у пользователей возникают проблемы с запоминанием паролей, если их длина превышает 10 символов. В нашем случае длина пароля ровно вполовину меньше. Звучит многообещающе. А какие тогда у эмодзи минусы?

О кракозябрах и Unicode

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

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

Боюсь, что попытки реализовать «эмоциональные» пароли будут измеряться тоннами седых волос разработчиков со всего мира. При этом любому из них может достаться за того парня, который сделал как проще, а не как надо. Пользователи не станут разбираться, кто виноват: они будут свято уверены в том, что проблема в приложении (или сайте), которое почему-то не желает принимать правильный пароль, а не в их любимой клавиатуре.

Требования к сложности

Что делать, если приложение требует использовать в пароле спецсимволы и буквы разного регистра по аналогии с «золотым стандартом»? Придется добирать обязательные символы, чтобы при регистрации наш эмодзи-пароль с формальной точки зрения был признан надежным. С одной стороны, уровень безопасности повысится, что, конечно, радует, а с другой — мы получим монстра Франкенштейна. Смотрите, какой красавец:

image-loader.svg

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

Безвыходных ситуаций не бывает

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

А теперь вопрос на засыпку: вы знаете код эмодзи

© Habrahabr.ru