Являются ли GUID хорошими паролями?[закрыто]
Вопрос
Плюсы:
- Я все равно не могу вспомнить «хорошие» пароли поэтому запомнить их не проблема.
- они не похожи на пароли
- их чертовски невозможно угадать (128 бит энтропии)
- легко генерировать (снимает проблему «хорошего PRNG»)
Минусы:
- ???
В частности;а как насчет паролей, которые вводят компьютеры, например, для входа в базу данных в некоторых настройках.
Решение
Одним из основных недостатков является то, что у вас не обязательно есть «128 бит энтропии», как указано в исходном вопросе.
Во многие алгоритмы GUID встроена информация в виде предсказуемых шаблонов, например MAC-адрес компьютера, дата/время или возрастающая последовательность.Криптоанализ GUID WinAPI показал, что в исходном состоянии можно предсказать до следующих 250 000 GUID, возвращаемых функцией UuidCreate.
Например, у меня есть около 50% шанс угадать первую цифру в первой позиции третьей группы цифр, поскольку это будет либо 1 (для гидов V1), либо 4 (для гидов V4).
Источник: http://en.wikipedia.org/wiki/Globally_Unique_Identifier
Другие советы
Минусы:
- Вы запишите их куда-нибудь.
- Вы, вероятно, отправите им электронное письмо или запишите их еще раз, если вам нужно рассказать кому-нибудь еще.
- Для некоторых систем они могут быть слишком длинными.
- Их практически невозможно запомнить, поэтому вы можете менять их чаще, чем хотелось бы.
Поэтому, если это не системные пароли, которые меняются редко, я сомневаюсь, что это хорошие пароли.
Против:
Было бы практически невозможно запомнить 32-байтовую буквенно-цифровую строку.
Если вам действительно нужен безопасный пароль, рассмотрите парольная фраза вместо.Длинную парольную фразу легко запомнить, и ее очень сложно подобрать методом перебора.
Против:
- Некоторые системы имеют ограничения на максимальную длину паролей.Если вы используете только шестнадцатеричные цифры, это может ограничить вашу энтропию до 32 бит.
Нужно ли кому-нибудь вводить его в качестве пароля?Или вы хотите использовать его как одноразовую вещь?А если серьезно, никто не хочет вводить GUID в поле пароля.У людей и так достаточно проблем с вводом ключей сети Wi-Fi WEP/WPA2.И чаще всего это одноразовые действия.
@Мияги:это, конечно, самый очевидный минус.Им придется это записать.
Технически они были бы хорошими паролями в реальной жизни, они были бы ужасными паролями
В конечном итоге вам придется записывать пароли, использовать менеджер паролей или какую-либо другую форму, чтобы фактически использовать пароль...каким-то образом перемещая точку отказа с пароля на другой аспект.
Рассмотрите возможность использования парольных фраз.Предложения с заменами определенных букв или других символов, а также цифр, набирая их с помощью клавиши SHIFT, преобразуя легко запоминающиеся числа в четко определенные последовательности символов.
Например bcs19850101bcs было бы bcs!(*%)!)!bcs
Минусы:
- Поля пароля не всегда достаточно длинные.
- Ввести сложнее — вы, вероятно, сохраните пароль в программе, а не в своей голове.Это небольшая проблема с безопасностью...
...плюсы:
- Никто не сможет выманить у вас пароль.
Пароли с большими случайными числами применялись и раньше.Их называют ОТПs и гораздо более безопасны, чем то, что вы предлагаете, поскольку они меняются со временем и, как правило, генерируются защищенными устройствами.Конечно, это актуально только в том случае, если ты разрабатываем систему паролей.
Если вам нужен безопасный пароль, который вы хотите оставить менеджеру паролей в UNIX-подобной системе, вам гораздо лучше просто извлечь его из /dev/random и закодировать во что-то читаемое.для 128 бит энтропии вы можете использовать что-то простое, например
head -c 16 /dev/random | openssl enc -a -e
который дает пароль типа 5eqIviKu4pFTqSPnYosVKg==
не неоправданно долгий, безопасный, случайный, самоубийственный, чтобы попытаться вспомнить.
Редактировать:Дополнительные преимущества этого метода по сравнению с UUID включают дополнительную безопасность в PRNG (/dev/random) и более короткие пароли, аналогичные недостатки.
Недавно я написал код для преобразования первых 64 бит контрольной суммы в последовательность из четырех английских слов.Это дает хорошую контрольную сумму (гораздо легче запомнить, чем шестнадцатеричный беспорядок), но я не уверен, что доверяю ей как паролю.Если вы защищаете что-то безопасное, вам следует использовать надежный пароль, который вы запомните и не запишете.Если нет, то подойдет любой старый пароль.
Я думаю, что на самом деле вы хотите криптографически случайное число, а не GUID.GUID и UUID не случайны — как сказал JohnFx, они имеют тенденцию включать обнаруживаемые значения, такие как MAC-адрес или текущая временная метка, чтобы гарантировать уникальность.
Вместо этого вам следует просмотреть любой доступный вам криптографический API и найти источник случайных чисел с высокой энтропией.Убедитесь, что в документации указано, что выходные данные подходят для криптографии, а не просто для обычного PRNG.Например, хорошим источником в системах Unix является /dev/random.Затем просто разверните столько случайных байтов, сколько захотите.
Лично мне это кажется слишком хардкорным.Я бы предпочел генерировать строки, которые содержат немного меньшую энтропию на символ, но их легче набирать и запоминать.Например, существует несколько алгоритмов, которые объединяют случайные слоги для создания произносимых бессмысленных слов;добавьте несколько цифр и знаков препинания, и у вас получится хороший пароль.
мне нравятся мои пароли сильный и произносимый (попробуйте один из сайтов перечислено здесь для онлайн-демонстрации обязательно выберите сайт «v2», чтобы получить руководство по произношению).
Против:Вы не сможете его перепечатать, а это значит, что вам придется копировать и вставлять.Если в вашей системе есть программа управления паролями, это не проблема.Но если вы окажетесь в системе, где это не так, просто перепечатать это будет очень сложно.
А потом после того как пару раз попробуешь, тебя блокируют....
Жизнь может стать очень раздражающей.
Даже если вы его запишете, хороший пароль — это тот, который вы можете вводить последовательно и без ошибок.