Lionux - crng dlouha inicializace

Miroslav Mraz mrazik na volny.cz
Sobota Září 19 16:44:23 CEST 2020


Přesně tohle ne, ale před časem jsem dělal pokusy s hardwarovým 
generátorem náhodných čísel a tak jsem objevil jak to zhruba v Linuxu 
funguje. Šifrovací algoritmy patrně čtou náhodná (nikoli pseudo-náhodná) 
čísla ze souboru /dev/random. Data jdou načíst jen pokud má jádro 
dostatek entropie (číslo v /proc/sys/kernel/random/entropy_avail), když 
se entropie vyčerpá, čtení je blokováno. Ano trvá dost dlouho než se 
nějaká dodatečná entropie vytvoří. Hardwarovým generátorem se to dá 
napravit, musí to být zašito v železe a inicializováno. Jak je to na PI 
nevím, ty procesory by měly TRNG obsahovat, jen netuším jestli to 
obsluhuje přímo jádro nebo je potřeba spustit nějaký obslužný démon jako 
jsem to měl na desktopu (démon rngd, 
https://github.com/nhorman/rng-tools). Poslední možnost je přesvědčit 
SSH aby místo /dev/random používal /dev/urandom.

Na otestování lze použít příkaz
$ xxd /dev/random
uvidíte jak rychle a jak velké bloky jsou čteny, případně
$ xxd /dev/urandom


Mrazík


Dne 19. 09. 20 v 15:05 Jaroslav Buchta napsal(a):
> Uz to pozoruji podruhe, zrejme to souvisi s generatorem nahodnych cisel, 
> ktery ma 2 urovne inicializace a ta druhá dlouho trvá. CPU je STM32MP
> 
> Poprve to bylo u nejake distribuce pro OPI.
> 
> Problem je, ze se do te doby nejde pripojit pres SSH, 2+ minuty uz 
> docela vadi.
> 
> debian na npi:~$ dmesg | grep rng
> [    0.000000] random: get_random_bytes called from 
> start_kernel+0xa0/0x494 with crng_init=0
> [  137.057758] random: crng init done
> 
> Ne(vy)resil to nekdo nahodou?
> 


Další informace o konferenci Hw-list