Элементарное руководство по JavaScript

Регистрация на современных веб-сайтах кардинально изменилась с момента их появления. Автоматизированные программы пытаются взломать учетные записи, браузеры автоматически запоминают любой пароль, который вводит пользователь, и пользователи имеют возможность сбросить свои пароли в любое время по электронной почте. Это накопление рисков безопасности и упрощенная политика паролей изменили представления людей о создании паролей. У ваших пользователей нередко разные пароли для каждого посещаемого веб-сайта. Я часто ловлю себя на том, что просто нажимаю на клавиатуру наугад, так как я знаю, что мой браузер может запомнить это за меня; и в случае, если это еще не произошло, когда мой менеджер паролей не вводит мой пароль автоматически, я могу просто использовать «Забыли пароль?» функция, реализованная на большинстве веб-сайтов.

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

Такую форму реализовать несложно. Генератор паролей - это очень простой фрагмент кода с очень эффективным выводом. Это дает крохотные накладные расходы на полосу пропускания.

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

Во-первых, список персонажей:

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

Чтобы получить случайный символ, мы просто используем методы JavaScript String.prototype.charAt и Math.random. Мы можем получить индекс случайного символа в charactersvariable, используя Math.floor(Math.random() * characters.length).

Math.random() * characters.length даст нам число от 0 до количества символов в строке. «Этаж», введя это значение через Math.floor, превратит десятичное число в целое путем округления в меньшую сторону. Мы можем использовать это целое число в качестве индекса для точного определения одного символа. В «полуторной» позиции строки нет символа, но есть символ в первой или второй позиции.

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

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

Поделитесь своими мыслями в комментариях ниже!