Questa è una domanda complessa; Cercherò di spiegarti un po 'senza andare troppo lontano tra le erbacce.
Per prima cosa, dobbiamo chiedere "che cos'è true randomness"? Tali discussioni degenerano rapidamente in acque filosofiche, ma il succo è questo: "è l'universo veramente casuale"? In altre parole, se si quantizza il tempo e la materia, è possibile calcolare lo stato successivo dell'universo da quello attuale? Se sì, allora l'universo è deterministico e non c'è vera casualità (vedi cosa intendo per "filosofico"?)
Poiché "la casualità vera" è difficile da definire, spesso ci accontentiamo di "pseudo-casuale". Questo è generalmente richiesto quando si generano numeri "casuali" su un computer, naturalmente.
Il generatore di numeri pseudocasuali più semplice sarebbe qualcosa come il famoso algoritmo "9 .. 9 .. 9 .." di Dilbert. Ma intuitivamente non sembra molto buono (che ovviamente è lo scherzo). Gli statistici hanno sviluppato una serie di test per dire se una sequenza di output apparentemente casuali è "buona". Inizia con la pagina di wikipedia per "chi squared test" e potresti passare un pomeriggio a leggere questi test.
Un semplice algoritmo del computer come un "generatore di congruenza lineare" produce numeri abbastanza buoni per un test chi quadrato (è comunque necessario "seminare" questo algoritmo da qualcosa, comunque).
Il prossimo passo in "bontà" è "casualità crittograficamente strong" che significa che data una sequenza a1, a2, ... non puoi predire il numero successivo nella sequenza con "probabilità ragionevole" a meno che tu non usi un sacco di calcolo. Questi numeri sono talvolta chiamati "computazionalmente pseudocasuali". Un modo comune per ottenere tale sequenza è tramite una "catena di hash" come questa: a1 = SHA512 (a2), a2 = SHA512 (a3), ... Poiché crediamo (basato sull'esperienza, non sulla prova matematica) che SHA512 è computazionalmente difficile da inverdire, crediamo che a2 sia "impossibile" prevedere solo dato a1.
Quindi ora sorge la domanda, qual è la cosa migliore che l'uomo possa fare secondo le regole stabilite nella sua domanda? Gli umani sono notoriamente cattivi nel generare casualità; c'era un sito web che avrebbe tentato di generare lanci di monete digitando "a caso" H, T, T, H, H, T, T, ecc. come se stessi lanciando una moneta (ma lo fai in la tua testa). Dopo un po ', il sito web inizierà a prevedere i lanci meglio del 50% delle volte (usando un modello di Markov nascosto). Siamo solo cattivi in questo.
Ci sono modi per migliorare la situazione usando varie tecniche di missaggio che sono probabilmente fattibili nella tua testa. E ci sono persino delle domande che potrei immaginare perché potresti volere questo (il prigioniero politico vuole criptare un messaggio agli alleati esterni). Ma penso che questo post sia abbastanza lungo. :)