Ottenere numeri casuali di ambito Byte dai file-device /dev/random e /dev/urandom
Da Gambas-it.org - Wikipedia.
Versione del 31 ott 2015 alle 10:42 di Vuott (Discussione | contributi) (Creata pagina con "''/dev/random'' e ''/dev/random'' sono file speciali che fungono da generatori di numeri pseudo-casuali. Permette l'accesso al rumore ambientale raccolto da driver di periferi...")
/dev/random e /dev/random sono file speciali che fungono da generatori di numeri pseudo-casuali. Permette l'accesso al rumore ambientale raccolto da driver di periferica ed altre fonti. Essi utilizzano un recipiente di entropia di 512 byte per generare dati casuali e si fermano quando tale recipiente è pieno. In particolare il kernel di Linux genera entropia dal timing della tastiera, i movimenti del mouse, e tempi IDE e rende i dati casuali di caratteri a disposizione di altri processi del sistema operativo attraverso i file speciali /dev/random e /dev/random.
Mostriamo un esempio pratico per leggere uno dei file-device, ad esempio /dev/urandom, e ottenere numeri casuali di tipo Byte (il corrispondente unsigned char del linguaggio C):
Public Sub Main() Dim fl As File Dim b As Byte fl = Open "/dev/urandom" For Read While True Read #fl, b Print b Sleep 0.3 Wend End
Riferimenti
- https://it.wikipedia.org/wiki//dev/random
- http://man7.org/linux/man-pages/man4/random.4.html
- http://manpages.ubuntu.com/manpages/hardy/it/man4/random.4.html
- https://wiki.archlinux.org/index.php/Random_number_generation
- http://www.2uo.de/myths-about-urandom/
- http://www.onkarjoshi.com/blog/191/device-dev-random-vs-urandom/
- http://stackoverflow.com/questions/5635277/is-dev-random-considered-truly-random