In che modo un computer genera numeri "casuali"?
Quanto può essere veramente "casuale" un numero generato da un computer?
Esiste un software / linguaggio di programmazione che potrebbe generare un numero più "veramente casuale" di altri?
In che modo un computer genera numeri "casuali"?
Quanto può essere veramente "casuale" un numero generato da un computer?
Esiste un software / linguaggio di programmazione che potrebbe generare un numero più "veramente casuale" di altri?
Risposte:
Molte implementazioni comuni di generatori di numeri casuali non sono realmente casuali. I computer utilizzano in genere generatori di numeri pseudocasuali , il che significa che il computer utilizza un algoritmo definito per generare una sequenza di numeri che sembrano casuali.
In Python puoi usare il random
modulo per generare numeri pseudocasuali. Tuttavia, se guardi i documenti, includono questa nota:
Avvertenza I generatori pseudo-casuali di questo modulo non devono essere utilizzati per motivi di sicurezza. Usa os.urandom () o SystemRandom se hai bisogno di un generatore di numeri pseudo-casuali sicuro crittograficamente.