Мастер-пароль (алгоритм)


Мастер-пароль — это тип алгоритма , впервые реализованный Маартеном Биллемонтом для создания уникальных паролей воспроизводимым образом. Он отличается от традиционных менеджеров паролей тем, что пароли не хранятся на диске или в облаке, а каждый раз заново генерируются на основе введенной пользователем информации: их имени, мастер- пароля и уникального идентификатора службы, для которой предназначен пароль. for (обычно URL). [1]

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

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

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

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

Биллемонт также создал несколько бесплатных программных реализаций алгоритма Мастер-пароля, лицензированных под лицензией GPLv3.:[2 ]