Dadi onlineGeneratore di dadi online

Principio della generazione casuale da parte di un computer e su Linux

Il principio della generazione casuale di un valore o un dado da un computer:

Il modo più semplice per generare numeri casuali è utilizzare un generatore di numeri pseudo-casuali. Un tale generatore produce numeri per ricorrenza con il primo numero che è un seme (seed in inglese). Questo seme deve essere inizializzato da qualsiasi numero. È il primo numero casuale della serie. Quindi, per ottenerne un altro, moltiplichiamo quest'ultimo per una costante a, quindi aggiungiamo una costante c al risultato e prendiamo il resto della divisione euclidea per una costante m.

Se le costanti a, c e m sono ben scelte, i numeri così prodotti sono pseudo-casuali. È quindi possibile inizializzare il seme al momento attuale in secondi, il che fornisce output diversi purché non si avvii il programma due volte nello stesso secondo, oppure è anche possibile scegliere un seme fisso se si desidera essere in grado di riprodurre i risultati. Questo tipo di generatore non è affatto sicuro, nel senso che conoscendo la sequenza di numeri casuali prodotti, non è impossibile prevedere il prossimo.

Ma perché vuoi generare numeri casuali «sicuri»? Bene, questi sono ad esempio utilizzati per generare chiavi per comunicare con i server crittografando il traffico, quindi può essere utile generare una chiave che un utente malintenzionato non possa prevedere. Ecco perché esistono generatori di numeri pseudo-casuali protetti per applicazioni crittografiche.

La generazione casuale e sicura è anche collegata alle tabelle ascii che svolgono un ruolo importante nella codifica dei caratteri. Ecco come il computer interpreta i diversi caratteri che compongono la catena casuale e sicura.

Infine, per generare un numero casuale, potrebbe essere preferibile utilizzare fonti di entropia. L'entropia di Shannon è una misura della quantità di informazioni presenti in un segnale. Può provenire, ad esempio, dal traffico di rete, dai movimenti del mouse, dall'utilizzo della CPU o da un sensore di rumore.

Su Linux, i file /dev/random e /dev/urandom consentono di generare numeri casuali in base all'entropia raccolta sul sistema. Il primo blocca la lettura fino a quando non vi è stata abbastanza entropia generata sul sistema. La lettura del secondo, d'altra parte, non è mai bloccata, ma la qualità dei numeri così generati potrebbe quindi essere inferiore.

Puoi anche saperne di più su un generatore di password in informatica.