man 4 random
má velmi vágní popis zdrojů entropie jádra Linuxu:
Generátor náhodných čísel shromažďuje okolní hluk z ovladačů zařízení a dalších zdrojů do zásobníku entropie.
Ani papírové přenosy entropie v Linux Random Number Generator nejsou o moc konkrétnější. Uvádí:
add_disk_randomness()
,add_input_randomness()
aadd_interrupt_randomness()
.
Tyto funkce jsou z random.c
, který obsahuje následující komentář:
Mezi zdroje náhodnosti z prostředí patří časování mezi klávesnicí
, časování přerušení z některých přerušení a další
události, které jsou jak (a) nedeterministické, tak (b) těžké pro
vnější pozorovatel k měření.
Dále dole je funkce add_hwgenerator_randomness(...)
označující podporu pro hardwarové generátory náhodných čísel.
Všechny tyto informace jsou poněkud vágní (nebo v případě zdrojového kódu vyžadují hlubokou znalost linuxového jádra k pochopení). Jaké jsou skutečné použité zdroje entropie a podporuje linuxové jádro nějaké hardwarové generátory náhodných čísel?
Přijatá odpověď:
Většina počítačového hardwaru má v dnešní době generátor náhodných čísel. VIA Semiconductor je vkládá do svých procesorů již mnoho let; linuxové jádro má na to ovladač via-rng. V drivers/char/hw_random/
napočítám 34 zdrojových modulů adresář v nejnovějším zdrojovém stromu, včetně ovladačů pro hardware Intel a AMD a pro systémy, které mají zařízení TPM. Můžete spustit démona rng (rngd) a odeslat náhodná data do fondu entropie jádra.