Вопросы программного кода и архитектуры Linux
Модератор: Olej
-
Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
-
Контактная информация:
Непрочитанное сообщение
Olej » 14 май 2021, 15:04
Olej писал(а): ↑14 май 2021, 14:38
Сервер DELL PowerEdge R420
Код: Выделить всё
olej@R420:~/2021/OWN_TEST.codes/thread$ aptitude search Havege*
p haveged - Linux entropy source using the HAVEGE algorithm
p libhavege-dev - entropy source using the HAVEGE algorithm - development files
p libhavege1 - entropy source using the HAVEGE algorithm - shared library
p libhavege1-dbg - entropy source using the HAVEGE algorithm - debug symbols
Код: Выделить всё
olej@R420:~/2021/OWN_TEST.codes/thread$ aptitude show haveged
Пакет: haveged
Версия: 1.9.1-6ubuntu1
Состояние: не установлен
Приоритет: дополнительный
Раздел: universe/misc
Сопровождающий: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Архитектура: amd64
Размер в распакованном виде: 78,8 k
Зависит: lsb-base (>= 3.2-14), libc6 (>= 2.15), libhavege1 (>= 1.9.0)
Предлагает: apparmor
Описание: Linux entropy source using the HAVEGE algorithm
haveged is a userspace entropy daemon which is not dependent upon the standard mechanisms for harvesting randomness for the system entropy pool. This is
important in systems with high entropy needs or limited user interaction (e.g. headless servers).
haveged uses HAVEGE (HArdware Volatile Entropy Gathering and Expansion) to maintain a 1M pool of random bytes used to fill /dev/random whenever the supply of
random bits in dev/random falls below the low water mark of the device.
More information about HAVEGE is available at http://www.irisa.fr/caps/projects/hipsor/
Домашняя страница: http://issihosts.com/haveged/
Код: Выделить всё
olej@R420:~/2021/OWN_TEST.codes/thread$ sudo apt install haveged
[sudo] пароль для olej:
Чтение списков пакетов… Готово
Построение дерева зависимостей
Чтение информации о состоянии… Готово
Будут установлены следующие дополнительные пакеты:
libhavege1
Следующие НОВЫЕ пакеты будут установлены:
haveged libhavege1
Обновлено 0 пакетов, установлено 2 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено.
Необходимо скачать 50,4 kB архивов.
После данной операции объём занятого дискового пространства возрастёт на 196 kB.
Хотите продолжить? [Д/н] y
Пол:1 http://mirror.mirohost.net/ubuntu focal/universe amd64 libhavege1 amd64 1.9.1-6ubuntu1 [22,0 kB]
Пол:2 http://mirror.mirohost.net/ubuntu focal/universe amd64 haveged amd64 1.9.1-6ubuntu1 [28,4 kB]
Получено 50,4 kB за 0с (317 kB/s)
Выбор ранее не выбранного пакета libhavege1:amd64.
(Чтение базы данных … на данный момент установлено 353793 файла и каталога.)
Подготовка к распаковке …/libhavege1_1.9.1-6ubuntu1_amd64.deb …
Распаковывается libhavege1:amd64 (1.9.1-6ubuntu1) …
Выбор ранее не выбранного пакета haveged.
Подготовка к распаковке …/haveged_1.9.1-6ubuntu1_amd64.deb …
Распаковывается haveged (1.9.1-6ubuntu1) …
Настраивается пакет libhavege1:amd64 (1.9.1-6ubuntu1) …
Настраивается пакет haveged (1.9.1-6ubuntu1) …
Created symlink /etc/systemd/system/default.target.wants/haveged.service → /lib/systemd/system/haveged.service.
Обрабатываются триггеры для systemd (245.4-4ubuntu3.6) …
Обрабатываются триггеры для man-db (2.9.1-1) …
Обрабатываются триггеры для libc-bin (2.31-0ubuntu9.2) …
Olej
-
Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
-
Контактная информация:
Непрочитанное сообщение
Olej » 14 май 2021, 15:12
Olej писал(а): ↑14 май 2021, 15:04
Код: Выделить всё
olej@R420:~/2021/OWN_TEST.codes/thread$ sudo apt install haveged
[sudo] пароль для olej:
Вот так было
до установки haveged:
Код: Выделить всё
olej@R420:~$ time cat /dev/random | rngtest -c10
rngtest 5
Copyright (c) 2004 by Henrique de Moraes Holschuh
This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
rngtest: starting FIPS tests...
rngtest: bits received from input: 200032
rngtest: FIPS 140-2 successes: 10
rngtest: FIPS 140-2 failures: 0
rngtest: FIPS 140-2(2001-10-10) Monobit: 0
rngtest: FIPS 140-2(2001-10-10) Poker: 0
rngtest: FIPS 140-2(2001-10-10) Runs: 0
rngtest: FIPS 140-2(2001-10-10) Long run: 0
rngtest: FIPS 140-2(2001-10-10) Continuous run: 0
rngtest: input channel speed: (min=77.585; avg=775.819; max=19065776.930)bits/s
rngtest: FIPS tests speed: (min=98.826; avg=128.875; max=138.214)Mibits/s
rngtest: Program run time: 257793833 microseconds
real 4m17,797s
user 0m0,007s
sys 0m0,030s
А так стало
после:
Код: Выделить всё
olej@R420:~$ cat /dev/random | rngtest -c100
rngtest 5
Copyright (c) 2004 by Henrique de Moraes Holschuh
This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
rngtest: starting FIPS tests...
rngtest: bits received from input: 2000032
rngtest: FIPS 140-2 successes: 100
rngtest: FIPS 140-2 failures: 0
rngtest: FIPS 140-2(2001-10-10) Monobit: 0
rngtest: FIPS 140-2(2001-10-10) Poker: 0
rngtest: FIPS 140-2(2001-10-10) Runs: 0
rngtest: FIPS 140-2(2001-10-10) Long run: 0
rngtest: FIPS 140-2(2001-10-10) Continuous run: 0
rngtest: input channel speed: (min=1.915; avg=12.215; max=15.855)Mibits/s
rngtest: FIPS tests speed: (min=51.830; avg=124.298; max=146.719)Mibits/s
rngtest: Program run time: 171815 microseconds
P.S. Про haveged и то как тестировать качество энтропии - более-менее внятное описание:
ИСПОЛЬЗОВАНИЕ ПРОСТОГО ДЕМОНА ЭНТРОПИИ HAVEGED
Olej
-
Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
-
Контактная информация:
Непрочитанное сообщение
Olej » 14 май 2021, 15:15
Olej писал(а): ↑27 сен 2018, 15:33
Теперь всё летает "в лёт"!
Устанавливаю на постоянкку (в автозагрузку):
Код: Выделить всё
olej@R420:~$ sudo systemctl status haveged
● haveged.service - Entropy daemon using the HAVEGE algorithm
Loaded: loaded (/lib/systemd/system/haveged.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2021-05-14 15:04:50 EEST; 8min ago
Docs: man:haveged(8)
http://www.issihosts.com/haveged/
Main PID: 111899 (haveged)
Tasks: 1 (limit: 115842)
Memory: 3.7M
CGroup: /system.slice/haveged.service
└─111899 /usr/sbin/haveged --Foreground --verbose=1 -w 1024
мая 14 15:04:50 R420 systemd[1]: Started Entropy daemon using the HAVEGE algorithm.
мая 14 15:04:50 R420 haveged[111899]: haveged starting up
мая 14 15:04:50 R420 haveged[111899]: haveged: ver: 1.9.1; arch: x86; vend: GenuineIntel; build: (gcc 8.3.0 ITV); collect: 128K
мая 14 15:04:50 R420 haveged[111899]: haveged: cpu: (L4 VC); data: 32K (L4 V); inst: 32K (L4 V); idx: 24/40; sz: 31410/52825
мая 14 15:04:50 R420 haveged[111899]: haveged: tot tests(BA8): A:1/1 B:1/1 continuous tests(B): last entropy estimate 7.99877
мая 14 15:04:50 R420 haveged[111899]: haveged: fills: 0, generated: 0
Код: Выделить всё
olej@R420:~$ sudo systemctl enable haveged
Synchronizing state of haveged.service with SysV service script with /lib/systemd/systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install enable haveged
Olej
-
Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
-
Контактная информация:
Непрочитанное сообщение
Olej » 11 апр 2023, 12:10
Код: Выделить всё
olej@R420:~/2023/ACCOUNTS/MAIL$ lsb_release -a
No LSB modules are available.
Distributor ID: Linuxmint
Description: Linux Mint 21.1
Release: 21.1
Codename: vera
Код: Выделить всё
olej@R420:~$ sudo systemctl status haveged
[sudo] пароль для olej:
● haveged.service - Entropy Daemon based on the HAVEGE algorithm
Loaded: loaded (/lib/systemd/system/haveged.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2023-04-11 09:57:11 EEST; 1h 30min ago
Docs: man:haveged(8)
http://www.issihosts.com/haveged/
Main PID: 1105 (haveged)
Tasks: 1 (limit: 115786)
Memory: 4.2M
CPU: 340ms
CGroup: /system.slice/haveged.service
└─1105 /usr/sbin/haveged --Foreground --verbose=1
апр 11 09:57:11 R420 systemd[1]: Started Entropy Daemon based on the HAVEGE algorithm.
апр 11 09:57:12 R420 haveged[1105]: haveged: command socket is listening at fd 3
апр 11 09:57:12 R420 haveged[1105]: haveged starting up
апр 11 09:57:12 R420 haveged[1105]: haveged: ver: 1.9.14; arch: x86; vend: GenuineIntel; build: (gcc 11.2.0 ITV); collect: 128K
апр 11 09:57:12 R420 haveged[1105]: haveged: cpu: (L4 VC); data: 32K (L4 V); inst: 32K (L4 V); idx: 23/40; sz: 31288/55167
апр 11 09:57:12 R420 haveged[1105]: haveged: tot tests(BA8): A:1/1 B:1/1 continuous tests(B): last entropy estimate 7.99819
апр 11 09:57:12 R420 haveged[1105]: haveged: fills: 0, generated: 0
Код: Выделить всё
olej@R420:~$ cat /dev/random | rngtest -c100000
rngtest 5
Copyright (c) 2004 by Henrique de Moraes Holschuh
This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
rngtest: starting FIPS tests...
rngtest: bits received from input: 2000000032
rngtest: FIPS 140-2 successes: 99914
rngtest: FIPS 140-2 failures: 86
rngtest: FIPS 140-2(2001-10-10) Monobit: 12
rngtest: FIPS 140-2(2001-10-10) Poker: 13
rngtest: FIPS 140-2(2001-10-10) Runs: 42
rngtest: FIPS 140-2(2001-10-10) Long run: 19
rngtest: FIPS 140-2(2001-10-10) Continuous run: 0
rngtest: input channel speed: (min=70.643; avg=13694.249; max=19073.486)Mibits/s
rngtest: FIPS tests speed: (min=72.248; avg=160.287; max=168.792)Mibits/s
rngtest: Program run time: 12047079 microseconds
99914 успешных из 100000 - 0,086% "брака".
Значение
качества и скорости генераторов случайных чисел возрастает годо от года: и всё что связано с шифрованием TLS/SSL, и всё что связано с майнингом в криптовалютных инструментах, и генерация надёжных IPv6 адресов в автономных mesh-сетях (
майнинг IPv6 для сети Yggdrasil).
Olej
-
Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
-
Контактная информация:
Непрочитанное сообщение
Olej » 10 сен 2023, 12:35
К вопросу
скорости генераторов случайных чисел...
Это особенно проявляется в скорости загрузки больших блокчейнов в криптовалютах (да и вообще
во всех задачах криптографии):
EmerCoin / EMC
Olej писал(а): ↑09 сен 2023, 21:43
время полной закачки блокчейна, "от нуля"
Здесь и далее развернулась дискуссия...
Olej
-
Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
-
Контактная информация:
Непрочитанное сообщение
Olej » 10 сен 2023, 12:38
Olej писал(а): ↑10 сен 2023, 12:35
К вопросу скорости генераторов случайных чисел...
Обсуждение этого вопроса от 2017 года:
Dude necessary time to do dd if=/dev/urandom of=/dev/sdx...
... и того, что это очень зависит от типа используемого процессора:
maybe it's an AMD thing? Ryzen 7 1800x with an NVMe drive only getting around 75MB/s
Любопытно...
Olej
-
Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
-
Контактная информация:
Непрочитанное сообщение
Olej » 10 сен 2023, 12:41
Olej писал(а): ↑10 сен 2023, 12:38
Любопытно...
Код: Выделить всё
olej@R420:~$ grep 'model name' /proc/cpuinfo | tail -n1
model name : Intel(R) Xeon(R) CPU E5-2470 v2 @ 2.40GHz
Код: Выделить всё
olej@R420:~$ grep 'model name' /proc/cpuinfo | wc -l
40
Код: Выделить всё
olej@R420:~$ time dd if=/dev/urandom of=/dev/null bs=1MB count=1000
1000+0 записей получено
1000+0 записей отправлено
1000000000 байт (1,0 GB, 954 MiB) скопирован, 3,94881 s, 253 MB/s
real 0m3,952s
user 0m0,001s
sys 0m3,945s
Olej
-
Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
-
Контактная информация:
Непрочитанное сообщение
Olej » 10 сен 2023, 12:46
Olej писал(а): ↑10 сен 2023, 12:38
Любопытно...
Код: Выделить всё
olej@esprimop420:~$ grep 'model name' /proc/cpuinfo | tail -n1 ; grep 'model name' /proc/cpuinfo | wc -l
model name : Intel(R) Xeon(R) CPU E3-1240 v3 @ 3.40GHz
8
Код: Выделить всё
olej@esprimop420:~$ time dd if=/dev/urandom of=/dev/null bs=1MB count=1000
1000+0 records in
1000+0 records out
1000000000 bytes (1,0 GB, 954 MiB) copied, 2,20923 s, 453 MB/s
real 0m2,212s
user 0m0,000s
sys 0m2,211s
Olej
-
Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
-
Контактная информация:
Непрочитанное сообщение
Olej » 10 сен 2023, 12:48
Olej писал(а): ↑10 сен 2023, 12:38
Любопытно...
Код: Выделить всё
olej@nvidia:~$ grep 'model name' /proc/cpuinfo | tail -n1 ; grep 'model name' /proc/cpuinfo | wc -l
model name : Intel(R) Core(TM) i5 CPU 660 @ 3.33GHz
4
Код: Выделить всё
olej@nvidia:~$ time dd if=/dev/urandom of=/dev/null bs=1MB count=1000
1000+0 записей получено
1000+0 записей отправлено
1000000000 байт (1,0 GB, 954 MiB) скопирован, 3,21744 s, 311 MB/s
real 0m3,220s
user 0m0,000s
sys 0m3,219s
Olej
-
Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
-
Контактная информация:
Непрочитанное сообщение
Olej » 10 сен 2023, 12:53
Olej писал(а): ↑10 сен 2023, 12:38
Любопытно...
Код: Выделить всё
olej@nvme:~$ grep 'model name' /proc/cpuinfo | tail -n1 ; grep 'model name' /proc/cpuinfo | wc -l
model name : Intel(R) Core(TM) i5-6500 CPU @ 3.20GHz
4
Код: Выделить всё
olej@nvme:~$ time dd if=/dev/urandom of=/dev/null bs=1MB count=1000
1000+0 записей получено
1000+0 записей отправлено
1000000000 байт (1,0 GB, 954 MiB) скопирован, 2,42313 s, 413 MB/s
real 0m2,433s
user 0m0,009s
sys 0m2,418s
Olej
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя