Użycie RNDADDENTROPY do dodania entropii do / dev / random
Mam urządzenie, które generuje pewien szum, który chcę dodać do puli entropii dla urządzenia / dev / random we wbudowanym systemie Linux.
Czytamstrona man na / dev / random i tak naprawdę nie rozumiem struktury, którą przekazujesz do wywołania ioctl RNDADDENTROPY.
RNDADDENTROPY
Add some additional entropy to the input pool, incrementing
the entropy count. This differs from writing to /dev/random
or /dev/urandom, which only adds some data but does not
increment the entropy count. The following structure is used:
struct rand_pool_info {
int entropy_count;
int buf_size;
__u32 buf[0];
};
Here entropy_count is the value added to (or subtracted from)
the entropy count, and buf is the buffer of size buf_size
which gets added to the entropy pool.
Jestentropy_count
w tej strukturze liczba bitów, które dodam? Dlaczego tak po prostu nie powinno byćbuf_size * 8
(przy założeniu, żebuf_size
jest w kategoriach bajtów)?
Dodatkowo dlaczego tak jestbuf
tablica o zerowym rozmiarze? Jak mam przypisać mu wartość?
Dziękujemy za pomoc tutaj!