↓
 ↑
Регистрация
Имя/email

Пароль

 
Войти при помощи
Styx
8 августа 2018
Aa Aa
#разное #имена

— Дорогой, мне нужно три случайных англоязычных имени.
— Легко!
$ grep "^[A-Z]" /usr/share/dict/words | sort -R | head -3
Chattanooga
Testudinaria
Tetradecapoda
Что за...
$ grep "^[A-Z]" /usr/share/dict/words | sort -R | head -3
Xenopterygii
Potamobiidae
Speotyto
Да ладно!
$ grep "^[A-Z]" /usr/share/dict/words | sort -R | head -3
Ichthyornithidae
Holocephali
Monimiaceae
Бл...

— Ну что ты так долго?
— Сейчас-сейчас...
$ sort -R /usr/share/dict/propernames | head -3
Claire
Marilyn
Sandy
Фух.
8 августа 2018
21 комментариев из 25
Styx
Все норм. Эльфы же
комп. программа не способна выдать абсолютно случайную последовательность. т.н. случайный выбор задается алгоритмом, а значит, вполне определен.
Rigo Fenix, спасибо, кэп, вот ваша лодка :)

https://www.pichome.ru/images/2018/08/08/BcZbI98ptW.jpg
Styx
(сердито) это не лодка!
а вообще я хочу космическую станцию. is it possible?
Тот момент, когда понимаешь, что написано и в чем соль. Бедный я :D
Rigo Fenix, ну у вас и запросики :) Ну как же не уважить :)

https://www.pichome.ru/images/2018/08/08/5CKMRy.jpg
Styx
вах!..
Я просто оставлю это здесь: https://22century.ru/popular-science-publications/wordgeneration
Rigo Fenix
> абсолютно случайное имя из трех букв

Там не имя из трёх букв, там «список слов, начинающихся на заглавные буквы, перемешать случайным образом и выбрать первые три значения».
C17H19NO3
три буквы из моего коммента никак не связаны с числом три из поста, :)
Rigo Fenix
комп. программа не способна выдать абсолютно случайную последовательность. т.н. случайный выбор задается алгоритмом, а значит, вполне определен.

Абсолютно случайную - нет, потому что найти что-то, не имеющее причинно-следственных связей, на практическом уровне невозможно.

А вот "задаётся алгоритмом" - тут вопрос интересней. Смотря откуда берётся случайное число, из /dev/random или /dev/urandom

Последнее - да, псевдослучайно, а первое - система копит разное энтропийное говно и отдаёт по запросу.

Итого: последовательность не абсолютно случайна, но "вполне определён" - ложное утверждение.

з.ы. Мои сведения старые, как говно мамонта, ещё времён, когда занимался серьёзно полиграфией и для нормального стохастического растрирования рипу нужен был аппаратный модуль за 100500 денег, а простой серый цвет арлекин рип выдавал без него с таким милым паттерном. Так что Styx, есличо, меня поправит. Ещё я слышал, что сейчас вот эту энтропию ещё умеют гнать интеловские процы, а система накапливает и в банки солит.
Показать полностью
C17H19NO3
В статье по ссылке последний коммент напомнил про илитариев с фикбука, оставляющих комменты, презрительно поглядывая через пенсне и оттопыривая мизинчик.
Desmоnd, немножко неправильно.
Вопреки распространённому мнению, и random и urandom могут быть использованы для криптографии. Они даже используют один и тот же генератор (CSPRNG — cryptographically secure pseudorandom number generator). И система добавляет энтропии (до которой сможет дотянуться) в обе функции.
Различие их лишь в том, что urandom не ждёт, когда в системе накопится достаточно энтропии, а использует то, что есть на данный момент. Соответственно, random — ждёт. Из-за этого urandom работает быстрее, чем random. Помните историю, как можно было увеличить скорость UI на андроиде, пропатчив его так, чтобы для генерации случайных идентификаторов элементов интерфейса он использовал не random (медленную), а urandom (быструю)?
На самом деле, неважно, насколько по-настоящему случайны выдаваемые генератором числа. Важно лишь то, можно ли предсказать следующее число, зная предыдущие. Если нет — то мы имеем надёжный генератор.
Для интересующихся есть интересная и познавательная статья на эту тему (англ): https://www.2uo.de/myths-about-urandom/
Показать полностью
Desmоnd
> Последнее - да, псевдослучайно, а первое - система копит разное энтропийное говно и отдаёт по запросу

На самом деле немного не так. Оба интерфейса одинаковым образом берут энтропию из общего primary pool CSPRNG, в котором копится разное энтропийное говно. Однако в случае исчерпания доступной энтропии в пуле /dev/random блокируется и говорит «всё, энтропия закончилась, ждите обновления пула», а вот /dev/urandom в этом случае перемешивает уже отданные 128 байт хэш-преобразованием и начинает отдавать битовую строку заново из них. Ну и /dev/urandom умеет принимать битовую строку извне, добавлять её в свой личный 128-байт пул, хэшировать и отдавать результат как псевдослучайный, в то время как /dev/random ничего не принимает, только берёт сам.

> сейчас вот эту энтропию ещё умеют гнать интеловские процы

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

Спасибо!

Возвращаясь к арлекину и рипам в далёком начале двухтысячных. Если сгенерить страничку серого цвета (стохастическое растрирование - это не обычный оффсет, где на каждый цвет cmyk своя решётка под углом 15, 75, 0 и 45 градусов соответственно, а расположение точек минимального размера в случайном порядке, что позволяет избавиться от муара), тогда вся возможная энтропия, если её и использует рип, быстро выбирается и растр генерится псевдослучайно. И тогда получается эффект тайтлов в какой-нибудь игрушке - видно приблизительно повторяющийся паттерн.

Что, понятное дело, сосёт, а значит извлекай из закромов $$$ и покупай аппаратный генератор. Наши, кстати, послали стохастическое растрирование нахер именно поэтому.
Desmоnd, в далёкие времена — да. Сейчас же random вообще не уменьшает энтропию, а urandom вообще напрямую из CSPRNG берёт, в обход пула :) Кстати, простейший «аппаратный» генератор — висящий «в воздухе» провод без резистора :)
Styx
> а urandom вообще напрямую из CSPRNG берёт, в обход пула

Первые 128 в качестве сида?

В какой-то из недавних версий Шindoшs, помнится, сид для PRNG забивался в виде фиксированной строки в реестре, едва ли не единой для всех систем изкоробки.
C17H19NO3, да ладно О_о
Styx

Погуглил, уточнил.

В NT 6.x вплоть до W8.1 включительно 64-байтный сид для PRNG всё-таки генерируется случайно из аппаратного пула на старте, но при загрузке системы прописывается в ключ реестра HKLM/Software/Microsoft/Cryptography/RNG/Seed, который по умолчанию доступен к произвольному чтению из юзерспейса, при этом принудительно подкормить генератор энтропией «на лету» невозможно by design.

Не такая жесть, но тоже неплохо.
Rigo Fenix
[комп. программа не способна выдать абсолютно случайную последовательность. т.н. случайный выбор задается алгоритмом, а значит, вполне определен.

Квантовый ГСЧ вам в аппаратной части в помощь. А пока не доказали детерминированность квантового мира (некоторые пытаются, всё никак не выходит) в отсутствии доказательств необходимо говорить о неопределенности - т.е. истинной случайности. (по возражениям - пост ниже)

Но доказать случайность как истину аристотелевкую не получается.
Desmоnd
Абсолютно случайную - нет, потому что найти что-то, не имеющее причинно-следственных связей, на практическом уровне невозможно.

Закономерность не синоним детерминированности. и не антоним стохастичности/случайности.
Копипаста:

Во избежание:

Беспричинный процесс != случайный процесс (non-deterministic process или stohoastic process).

Поэтому слово "случайный" - вовсе не антоним слова "закономерный" и, соответственно, не синоним слова "беспричинный". И детерминированные и стохастические (случайные) процессы описываются закономерностями. Пусть и различными.


Но какова "причина", почему электрон встречается именно здесь, а не тут? В каждом конкретном измерении?

Можно говорить о вероятности, о закономерности. О причинно-следственных связях (через мозголомный квантмех с полями вероятностей и кучей не решаемых аналитически диффур), но вопрос это не снимает. Есть случайность, стохастичнсоть. Можно обтекаемо напомнить о закономерностях, как я выше сделал, но на конкретный вопрос (что тоже выше) это ответа не даёт.
Показать полностью
ПОИСК
ФАНФИКОВ







Закрыть
Закрыть
Закрыть