Diceware — метод создания надёжных парольных фраз с помощью игральных костей как генератора случайных чисел. Каждое слово генерируется пятью бросками кости и поиском в криптографическом словаре из 7776 слов. Рекомендуется использовать минимум 6 слов для обеспечения достаточной энтропии.
Метод генерации парольных фраз с помощью игральных костей
Diceware — это метод создания парольных фраз, паролей и других криптографических переменных с использованием обычных игральных костей в качестве аппаратного генератора случайных чисел. Для каждого слова в парольной фразе требуется пять бросков шестигранной кости. Выпадающие числа от 1 до 6 собираются в пятизначное число, например 43146. Это число затем используется для поиска слова в криптографическом словаре. В исходном словаре Diceware число 43146 соответствует слову munch. Генерируя несколько слов подряд, можно построить длинную парольную фразу случайным образом.
Словарь Diceware — это любой список из 6⁵ = 7776 уникальных слов, желательно таких, которые пользователю будет легко писать и запомнить. Содержимое словаря не требует защиты или скрытия каким-либо образом, так как безопасность парольной фразы Diceware зависит от количества выбранных слов и количества слов, из которых каждое слово могло быть выбрано. Словари были составлены более чем для двух десятков языков.
Уровень непредсказуемости парольной фразы Diceware можно легко рассчитать: каждое слово добавляет 12,9 бит энтропии к парольной фразе (то есть log₂(6⁵) бит). Первоначально, в 1995 году, создатель Diceware Арнольд Райнхольд (Arnold Reinhold) считал пять слов (64,6 бит) минимальной длиной, необходимой для обычных пользователей. Однако в 2014 году Райнхольд начал рекомендовать использовать как минимум шесть слов (77,5 бит).
Этот уровень непредсказуемости предполагает, что потенциальные злоумышленники знают три вещи: что для генерации парольной фразы использовался Diceware, конкретный используемый словарь и точное количество слов в парольной фразе. Если злоумышленник располагает меньшей информацией, энтропия может быть больше 12,9 бит/слово.
Приведённые выше расчёты энтропии алгоритма Diceware предполагают, что, как рекомендует автор Diceware, каждое слово отделяется пробелом. Если вместо этого слова просто объединяются, рассчитанная энтропия немного снижается из-за избыточности; например, трёхсловные фразы Diceware «in put clammy» и «input clam my» становятся идентичными при удалении пробелов.
Словари EFF
Фонд электронных рубежей (Electronic Frontier Foundation) опубликовал три альтернативных английских словаря diceware в 2016 году, дополнительно подчеркнув лёгкость запоминания с предубеждением против неясных, абстрактных или иных проблемных слов; компромисс заключается в том, что типичные парольные фразы в стиле EFF требуют ввода большего количества символов.
Пример
Исходный словарь diceware состоит из строки для каждой из 7776 возможных комбинаций пяти костей. Один отрывок:
«`
43136 mulct
43141 mule
43142 mull
43143 multi
43144 mum
43145 mummy
43146 munch
43151 mung
«`
Примеры
Примеры парольных фраз со словарём Diceware:
- dobbs bella bump flash begin ansi
- easel venom aver flung jon call
Примеры парольных фраз со словарём EFF:
- conjoined sterling securely chitchat spinout pelvis
- rice immorally worrisome shopping traverse recharger
Комикс XKCD #936 показывает пароль, похожий на сгенерированный Diceware, даже если используемый словарь короче стандартного списка из 7776 слов, применяемого в Diceware.
🔑 Ключевые факты
- Diceware использует обычные шестигранные кости для генерации криптографически стойких парольных фраз
- Каждое слово требует 5 бросков кости, что создаёт пятизначное число от 11111 до 66666
- Словарь Diceware содержит ровно 7776 уникальных слов (6⁵)
- Каждое слово добавляет 12,9 бит энтропии к парольной фразе
- Минимальная рекомендуемая длина — 6 слов (77,5 бит энтропии) с 2014 года
- Словари Diceware существуют более чем для 20 языков
- Фонд EFF опубликовал альтернативные словари в 2016 году с более запоминаемыми словами
❓ Часто задаваемые вопросы
💡 Интересные факты
- Метод Diceware был создан Арнольдом Райнхольдом в 1995 году и до сих пор считается одним из самых надёжных способов генерации парольных фраз
- Словарь Diceware содержит ровно 7776 слов, потому что это равно 6⁵ — количеству всех возможных комбинаций пяти бросков шестигранной кости
- Комикс XKCD #936 популяризировал идею парольных фраз, похожих на Diceware, показав, что четыре случайных слова безопаснее, чем сложный пароль из символов