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

Основной пароль
Оригинальный автор (ы)Maarten Billemont
изначальный выпуск15 июня 2012 г.; 8 лет назад (2012-06-15)
Стабильный выпуск
2.3 / 19 апреля 2015 г.; 5 лет назад (2015-04-19)
Репозиторийhttps://gitlab.com/MasterPassword/MasterPassword
Написано вЯва, C, JavaScript
Операционная системаМайкрософт Виндоус и Unix-подобный, включая OS X, iOS и Android
Доступно ванглийский
ТипГенератор паролей
ЛицензияСтандартная общественная лицензия GNU
Интернет сайтmasterpasswordapp.com

Основной пароль является алгоритм разработано Maarten Billemont для создания уникальных пароли воспроизводимым образом. Он отличается от традиционного менеджеры паролей в том, что пароли не хранятся на диске или в облаке, а воссоздаются каждый раз с использованием информации, введенной пользователем; самое главное, их полное имя, а основной пароль, а также уникальное имя службы, для которой предназначен пароль.[1]

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

Алгоритм

Алгоритм включает следующие параметры:[1]

  • имя: Полное имя пользователя, используемое как соль. Полное имя пользователя выбрано, поскольку оно обеспечивает достаточно высокий уровень энтропии и вряд ли может быть забыто.
  • основной пароль: Секрет, используемый для генерации главного ключа.
  • Название сайта: Уникальное имя службы, для которой предназначен пароль. Обычно хорошим выбором является чистое доменное имя.
  • прилавок: Целое число, которое может быть увеличено, когда служба запрашивает новый пароль. По умолчанию это 0.
  • password_type: Тип пароля определяет длину и состав результирующего пароля, см. Ниже.

Генерация мастер-ключа

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

соль = "com.lyndir.masterpassword" + длина(имя) + имямастер ключ = зашифровать(основной пароль, соль, 32768, 8, 2, 64)

Генерация семян шаблона

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

семя = hmac_sha256(мастер ключ, "com.lyndir.masterpassword" + длина(Название сайта) + Название сайта + прилавок)

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

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

  • Максимальный пароль безопасности (20 Печатные символы ASCII )
  • Длинный пароль (14 печатных символов ASCII)
  • Средний пароль (8 печатных символов ASCII)
  • Короткий пароль (4 печатаемых символа ASCII)
  • Основной пароль (8 буквенно-цифровых символов)
  • ШТЫРЬ (4 цифры)

Реализации

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

Рекомендации

  1. ^ а б Биллемон, Маартен. «Алгоритм мастер-пароля». Архивировано из оригинал 9 декабря 2017 г.. Получено 8 мая 2015.
  2. ^ «Лицензионный файл репозитория MasterPassword». Получено 15 мая 2015.
  3. ^ Биллемон, Маартен. «Релиз 1.0.0». Получено 15 мая 2015.
  4. ^ Надстройка Masterpassword для Firefox
  5. ^ Плагин Masterpassword для Chrome
  6. ^ Биллемон, Маартен. "Главная страница мастер-пароля". Получено 15 мая 2015.

внешняя ссылка

Официальный веб-сайт