Sergey65
написал 18 декабря 2005 года в 14:14 (3169 просмотров)
Ведет себя
как мужчина; открыл 4 темы в форуме, оставил 2 комментария на сайте.
Попробовал сделать сабж: http://www.nixp.ru/pub/upload/Sergey65/ranstr.sh . В нем из случайной последовательности цифр и лат. букв длиной 3000 символов, к-рую я заранее сгенерировал с помощью /dev/random,стандартным псевдослучайным образом выбираются символы для пароля. Очень быстро генерирует пароли любой длины. Можно задать создание сразу нескольких паролей. Если кто здесь разбирается в криптографии и в случайных последовательностях — проверьте, pls, насколько получаемые пароли надежны.
Последние комментарии
- OlegL, 17 декабря 2023 года в 15:00 → Перекличка 21
- REDkiy, 8 июня 2023 года в 9:09 → Как «замокать» файл для юниттеста в Python? 2
- fhunter, 29 ноября 2022 года в 2:09 → Проблема с NO_PUBKEY: как получить GPG-ключ и добавить его в базу apt? 6
- Иванн, 9 апреля 2022 года в 8:31 → Ассоциация РАСПО провела первое учредительное собрание 1
- Kiri11.ADV1, 7 марта 2021 года в 12:01 → Логи catalina.out в TomCat 9 в формате JSON 1
ecobeing.ru
Экология и вегетарианство на благо всем живым существам Планеты.
Сильно честно говоря, я не очень понимаю, на фига весь сыр-бор. Во-первых, есть прибамбасы типа
openssl rand -base64 <число>
если уж сильно надо. Во-вторых, сгенерировать последовательность байт из /dev/random (что само по себе не очень случайно, взял бы /dev/urandom что ли), а потом из _нее_ выбирать случайную подпоследовательность — это как-то даже совсем не случайно…
И зачем? Чтобы быстро генерить пароли? А куда спешить? Прочитай /dev/urandom из сяшной проги, да и сконвертируй в последовательность символов. Смешней всего, что может даже и быстрее получится…
Good Luck,
UT
Точно, работает. Только ведь rand — это псевдослучайная функция?
? Насколько я знаю, /dev/random выдает истинно случайную последовательность из всяких компьютерных «шумов» и, кстати, поэтому надолго «задумывается», когда их поток временно иссякает. А /dev/urandom в случае такого иссякания начинает самостоятельно генерировать псевдослучайные данные.
Если число вариантов выбора ограничено. А в данном случае где ограничения?
Если пользоваться /dev/urandom — да, быстрее. 8-)
круто. компьютерный шум. это что-то новенькое…
а у меня ноут не шумит, чего бы это он? ;)
А ты проверь, будет у тебя этот генератор работать или нет? По-любому не будет, раз шумов нет (:
Сорри, попутал я random с urandom… Все же, я не думаю, что чтение с /dev/random настолько медленное, чтобы оправдать скрипт, который выискивает случайную подпоследовательность в заранее сгенерированной случайной последовательности. Можно попробовать прогнать статистический анализ, конечно, но на данный момент леняво…
А в чем проблема с hardware noise, который был переведен «компьютерными шумами"? Мне почему-то кажется, что decvar знает, что это такое, так что стебаться?
Good Luck,
UT
а чего бы и не постебаться-то? ;) настроенение хорошое….
кстати, какое отношение это имеет к /dev/random?
просто мне интересен механизм как ядро узнает от каком либо из множества «шумов». я так понимаю речь о thermal noise?
Кстати, вот ссылка для Sergey65, точная формулировка моих сомнений по поводу его выбора из заранее посторенной последовательности:
http://rfc.dotsrc.org/rfc/rfc1750.html
часть 4.4
Грубо говоря, степень случайности выборки n бит из заранее известной потенциальному взломщику базы данных равна n. Другими словами, члены его последовательности случайны ровно настолько, насколько случайны места, где они взяты в базе данных. А для выбора мест он пользует псевдо-случайную функцию. Его 3000 байт абсолютно ему ничем не помогают.
2decvar: я, честно говоря, не знаю, как именно
This random number generator gathers environmental noise from device drivers and other sources into an entropy pool.
Но, наверное, надо почитать random.h и random.c в сырцах ядра.
Good Luck,
UT
Сдаюсь. И ведь то же самое мне говорил знакомый программист, научивший меня пользоваться /dev/random’ом. Тогда до меня не дошло.
например время чтения сектора жёсткого диска или время между двумя прерываниями.
Драйвера температурных датчиков, по-моему тоже вносят свой вклад… Или нет, может мне только кажется, что я это видел.
Напрямую эти числа не стоит использовать, но после определённой «рандомизации», получается неплохо.
Слово noise, я понимаю из радиотехники пришло, там ведь есть «белый шум».
> Слово noise, я понимаю из радиотехники пришло, там ведь есть «белый шум».
Нет, не только там. И, кстати, шум бывает не только белым. Может, к примеру, быть розовым :)
thermal noise это не температурные датчики,
википедия
ааа. не воткнул сразу, что это тепловой шум :). Ну этого нету, разве что специальные железяки, со специальными дровами…